cd $1:-. 这是啥意思[重复]
Posted
技术标签:
【中文标题】cd $1:-. 这是啥意思[重复]【英文标题】:cd $1:-. what does that mean [duplicate]cd $1:-. 这是什么意思[重复] 【发布时间】:2017-06-30 09:40:39 【问题描述】:#====================script 5 -- ls reccurssive avec cd =======
#!/bin/bash
exec 2>/dev/null # redirige stderr pour toute la suite
# au cas ou le script est invoque sans argument $1
# n'existe pas, la commande suivante devient cd .
cd $1:-. # problem that i miss understood
for i in * ; do
if [ -d $i ] ; then
echo "$PWD/$i/ <-- repertoire"
$0 $i # le script s'invoque lui-même
else
echo $PWD/$i
fi
done
================================================ ====
谁能给我解释一下这张 cd $1:-. 是什么意思,如果有文章解释一下如何使用它
【问题讨论】:
您的问题已包含法语答案。 【参考方案1】:$a:-b
表示,如手册中所述,如果已定义,则使用 $a
,否则仅使用 b
。
这里的想法是,如果脚本收到一个参数,$1
将被定义,脚本将cd
到那个目录。如果脚本没有收到参数,$1-.
将扩展为提供的默认值,.
。
由于.
表示当前目录而cd .
是空操作,这基本上意味着“cd
到$1
如果可用,否则只需继续执行脚本。”
【讨论】:
以上是关于cd $1:-. 这是啥意思[重复]的主要内容,如果未能解决你的问题,请参考以下文章