解析bash脚本的输入参数时带空格的参数

老灵魂

我编写了一个bash脚本,该脚本按名称接收参数,并在键值对中读取其值。以下是我如何运行脚本的示例。

 sh test.sh param1='a' param2='b'

然后,在脚本中引用诸如$ param1和$ param2之类的输入参数。下面是我为此编写的脚本。

for item in $@; do
case $item in
(*=*) eval $item;;
esac
done

但是,如果参数值中有空格,则仅占空格之前的部分。

 param3='select * from'

只会将'select'分配给param3而不是整个字符串。我怎样才能做到这一点?任何帮助将非常感激。

编辑 :

在伊尼安的回答之后

for item in $@; do
case "$item" in
(*=*) eval "$item";;
esac
done
那个家伙

您可以通过引用"$@"和使用declare代替来做到这一点eval

for item in "$@"; do
case $item in
(*=*) declare "$item" ;;
esac
done

但是,现在这是一个bash脚本,因此您必须使用bash test.sh而不是sh test.sh

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

从命令行执行 bash 脚本,该脚本需要一个带空格的参数

来自分类Dev

bash脚本检查输入参数

来自分类Dev

带/不带选项的BASH脚本和参数

来自分类Dev

如何告诉 bash 脚本解析包含空格的单个命令行参数?

来自分类Dev

命令行参数,带空格的路径,解析错误

来自分类Dev

命令行参数,带空格的路径,解析错误

来自分类Dev

带参数的rman脚本

来自分类Dev

在bash中使用带空格的参数执行命令

来自分类Dev

禁用 bash 脚本输入参数替换

来自分类Dev

禁用 bash 脚本输入参数替换

来自分类Dev

在bash脚本中解析参数的最佳方法

来自分类Dev

Bash脚本解析带引号的参数

来自分类Dev

在E中调用脚本时的输入参数

来自分类Dev

带参数的Bash函数

来自分类Dev

aws ses自动化脚本:解析参数'--destination'时出错:预期:'=',收到:'@'作为输入:

来自分类Dev

Bash脚本-以空格作为单个参数的字符串

来自分类Dev

Bash脚本参数包含空格不起作用

来自分类Dev

在bash脚本中使用空格迭代多个参数

来自分类Dev

PostgreSQL 在插入带参数的外部脚本时触发

来自分类Dev

如何在bash函数中使用空格解析参数

来自分类Dev

在Bash脚本中传递参数时,Veeam CLI未知参数

来自分类Dev

带参数的 Powershell 导入脚本

来自分类Dev

带空格的flask网址参数生成带空格的网址

来自分类Dev

如何将带有空格的参数从bash脚本传递到bash脚本?

来自分类Dev

Ubuntu Bash脚本执行带空格的命令

来自分类Dev

从包含带空格的参数的字符串中解析执行命令

来自分类Dev

Python-带空格的多个参数

来自分类Dev

使用subshell传递带空格的参数

来自分类Dev

带空格的数组元素是函数的参数

Related 相关文章

热门标签

归档