在shell脚本中传递包含空格的参数
发布时间:2020-12-15 19:31:06 所属栏目:安全 来源:网络整理
导读:由于某些原因,我需要我的脚本才能接受具有空格字符的参数。如果我有一个脚本如下, for SOME_VAR in $@do echo "$SOME_VAR" cd "$SOME_VAR"done; 如果我传递参数到脚本(假设它被称为foo.sh) sh foo.sh "Hello world" 我期待脚本打印Hello world并将目录更改
由于某些原因,我需要我的脚本才能接受具有空格字符的参数。如果我有一个脚本如下,
for SOME_VAR in $@ do echo "$SOME_VAR" cd "$SOME_VAR" done; 如果我传递参数到脚本(假设它被称为foo.sh) sh foo.sh "Hello world" 我期待脚本打印Hello world并将目录更改为“Hello world”。但是我收到这个错误信息 hello cd: 5: can't cd to hello world cd: 5: can't cd to world 那么我如何通过空格字符把参数传递给shell脚本中的命令呢?
你也必须用$引号括起来:“$ @”
这告诉shell忽略参数中的空格;它不会将所有参数变成一个非常长的字符串。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |