首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Bash脚本if -if

Bash脚本if -if
EN

Unix & Linux用户
提问于 2016-06-11 19:30:38
回答 1查看 251关注 0票数 -2

我想要创建一个bash脚本,它从互联网下载一个特定的安装程序,安装它,创建一个启动它的桌面文件,使它自动启动,然后删除安装程序,但是有一些事情我希望脚本检查。这些事情是:

  • 安装程序的存在(如果不存在,则下载它,否则设置它为可执行文件)
  • 前一个安装的存在(如果存在,那么设置它的uninstaller可执行文件,运行它并删除它留下的所有内容,否则转到下一步)
  • 通过apt list _ grep gksu (如果已安装,则转到下一步,否则安装它)的gksu包的状态
  • gksu example.run的输出(如果有"GNOME_SUDO_PASS“行,则重复gksu example.run,否则转到下一步)
EN

回答 1

Unix & Linux用户

发布于 2016-06-11 20:18:07

条件:安装程序- ls。example.runchmod +x pelda.run下载/链接/of/example.run

正如我所理解的,它的意思是:

代码语言:javascript
复制
if [ -f example.run ]
then
    chmod +x pelda.run
else
    wget download/link/of/example.run
fi

[ -f example.run ]是使用test命令的一个例子。如果存在名为example.run的文件,则测试命令将返回代码设置为0(意为true)。如果没有,则设置返回代码1(意为false)。

条件: gksu - apt列表--已安装的\ gksu,如果存在,那么应该安装gksu其他gksu pelda.run

在我解释上述内容时,它的意思是:

代码语言:javascript
复制
if apt list --installed | grep gksu
then
    gksu pelda.run
else
    sudo apt install gksu
fi

在这里,我们使用的事实是,grep根据是否找到匹配来设置返回代码。apt list --installed返回已安装软件包的列表。如果其输出任何地方都包含字符串gksu,则grep设置返回代码0(意为真),并执行then子句。如果没有,则执行else子句。

票数 1
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/289199

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档