加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

双击时与Bash脚本不同的输出与在终端中运行

发布时间:2020-12-15 16:59:37 所属栏目:安全 来源:网络整理
导读:我有这个脚本(以及其他)在每次登录/午夜时生成我的壁纸.它有755个权限.部分代码: #/bin/bashconvert -size 1440x900 xc:none wall.pngcomposite -gravity center ../pics/im256.png wall.png wall.pngcomposite -geometry 118x67+661+578 ../pics/im-title-
我有这个脚本(以及其他)在每次登录/午夜时生成我的壁纸.它有755个权限.部分代码:
#/bin/bash

convert -size 1440x900 xc:none wall.png
composite -gravity center ../pics/im256.png wall.png wall.png
composite -geometry 118x67+661+578 ../pics/im-title-white.png wall.png wall.png

TIME=`$HOME/bin/time.py | grep "."`

if [[ $TIME == *'* ]]
then
    # <...1...>
else
    # <...2...>
fi

如果我的$TIME变量中有’符号’,我很感兴趣.当没有’符号 – 一切都很好.

现在,当我知道至少有一个’符号(或者我可以强制这样做)时,当我双击脚本时,我发现自己在else语句中,当我在终端中运行脚本时 – 我发现自己在那时.我想总是接受声明,但是怎么样?

我裁剪失败的部分(左 – 正确,正确 – 错误):

我花了一个帖子,直到我发现shebang实际上并不是一个shebang. #!/ bin / bash解决了这个问题.

似乎不正确的shebang默认为/ bin / sh无法正常运行.我的登录shell是/ bin / bash,这意味着即使没有bash关键字也可以从shell运行,例如:./ script.sh默认为bash而不是sh.为什么双击时不能这样做..

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读