linux – 解析shell脚本参数
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了linux – 解析shell脚本参数,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1001字,纯文字阅读大概需要2分钟。
内容图文
$myscript.sh -host blah -user blah -pass blah
我想把参数传递给它.
我习惯做1美元,2美元,3美元….但我想开始命名它们
解决方法:
sh中有很多方法可以解析参数. Getopt很好.这是一个简单的脚本,可以手动解析:
#!/bin/sh
# WARNING: see discussion and caveats below
# this is extremely fragile and insecure
while echo $1 | grep -q ^-; do
# Evaluating a user entered string!
# Red flags!!! Don't do this
eval $( echo $1 | sed 's/^-//' )=$2
shift
shift
done
echo host = $host
echo user = $user
echo pass = $pass
echo args = $@
示例运行如下:
$./a.sh -host foo -user me -pass secret some args
host = foo
user = me
pass = secret
args = some args
请注意,这甚至不是非常强大,并且对安全性非常开放
因为脚本eval是用户构造的字符串.它只是
意味着作为一种可能的做事方式的例子.一种更简单的方法是要求用户在环境中传递数据.在一个bourne shell中(即任何不在csh系列中的东西):
$host=blah user=blah pass=blah myscript.sh
效果很好,并且脚本中将提供变量$host,$user,$pass.
#!/bin/sh
echo host = ${host:?host empty or unset}
echo user = ${user?user not set}
...
内容总结
以上是互联网集市为您收集整理的linux – 解析shell脚本参数全部内容,希望文章能够帮你解决linux – 解析shell脚本参数所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。