shell脚本参数可以有空格么

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell脚本参数可以有空格么相关的知识,希望对你有一定的参考价值。

参考技术A 用双引号就可以了,这样就是一个整体
例如:
test.sh "hello world"
脚本中取参数时也要用双引号: "$1"
参考技术B 可以,不过要加""或转义
如:
cat a\ b.txt

cat "a b.txt"
参考技术C 自己尝试了一番,终于找到真正解决办法。这个办法的优点是,可以同时传递多个带空格的参数。注意下文中有黑体的部分:

主脚本test.sh:
PROJECT_CLEAN=0
PROJECT_FILES="file1 file2"
./build-project.sh $PROJECT_CLEAN "$PROJECT_FILES"
辅脚本build-project.sh:
PARAM_CLEAN=$1
PARAM_FILES="$2"
for file_name in $PARAM_FILES
do
echo $file_name
done

以上是关于shell脚本参数可以有空格么的主要内容,如果未能解决你的问题,请参考以下文章

shell脚本中能否有空行

Linux Shell脚本之向脚本传递参数

怎样向shell函数中传递有空格的字符串参数

Shell 脚本踩坑指北

学习之shell脚本

每天三分钟搞定linux shell脚本10 字符串相关的if判断