很明显,使用 shell 脚本,这种事情可以通过多种方式(比大多数编程语言更多)来完成,因为所有不同的变量扩展方法和程序,如test
and[
和[[
等。
现在我只是在寻找
DIR=$1 or .
这意味着,我的 DIR 变量应该包含在第一个 arg 或当前目录中指定的内容。
这 和 有什么区别DIR=${1-.}
?
我发现连字符语法令人困惑,并寻求更具可读性的语法。
为什么我不能这样做?
DIR="$1" || '.'
我猜这意味着“如果 $1 为空,则分配仍然有效(DIR 变为空),因此无效命令'。' 永远不会被处决。”