gpt4 book ai didi

bash - 无法在 bash 脚本中设置变量

转载 作者:行者123 更新时间:2023-11-29 09:34:46 24 4
gpt4 key购买 nike

我在使用一个非常简单的 bash 脚本 (test.sh) 时遇到了问题:

if [ $# >=1 ]
then
backup_file=$1
else
backup_file=~/standard.tar.bz2
fi

echo $backup_file

如果我传递一个参数:

test.sh myfile

我得到了预期的输出:myfile

否则,我没有输出。我期待看到(当不带参数执行 test.sh 时):~/standard.tar.bz2

我做错了什么?

最佳答案

这个条件评估就是问题所在:

[ $# >=1 ]

将此更改为:

[ $# -ge 1 ]

或者在 BASH 中:

[[ $# -ge 1 ]]

或者:

(( $# ))
  • [...][[...]] 不允许 >= 作为运算符
  • 运算符后需要一个空格。

关于bash - 无法在 bash 脚本中设置变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22025859/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com