linux shell将可变参数附加到命令中

linux shell将可变参数附加到命令中,第1张

概述我试图获得一个生成JSDoc的bash脚本,以给出这样的给定参数 ./jsdoc.sh file.js another.js maybe-a-third.js 我被困在如何将未知数量的参数传递给下一个shell命令. (也不知道如何检查param是否存在,只有当[-z …]) 这段代码最多可以使用两个参数,但显然不是正确的方法. #!/bin/bash# would like to know 我试图获得一个生成JsDoc的bash脚本,以给出这样的给定参数
./Jsdoc.sh file.Js another.Js maybe-a-third.Js

我被困在如何将未知数量的参数传递给下一个shell命令.

(也不知道如何检查param是否存在,只有当[-z …])

这段代码最多可以使用两个参数,但显然不是正确的方法.

#!/bin/bash# would like to kNow how to do positive checkif [ -z "" ]then echo no paramelse        d=$PWD        cd ~/projects/Jsdoc-toolkit/        # this bit is obvIoUsly not the right approach        if [ -z "" ]        then java -jar Jsrun.jar app/run.Js -a -t=templates/Jsdoc/ $d/        else java -jar Jsrun.jar app/run.Js -a -t=templates/Jsdoc/ $d/ $d/        fi        cp -R out/Jsdoc $dfi

任何其他指针,我可以如何实现这一点将不胜感激.

编辑:根据@ skjaIDev的答案更新脚本 – 快乐的日子;)

#!/bin/bashd=$PWDfor i in $*; do    params=" $params $d/$i"doneif [ -n "" ]; then        cd ~/projects/Jsdoc-toolkit/        java -jar Jsrun.jar app/run.Js -a -t=templates/Jsdoc/ $params        cp -R out/Jsdoc $dfi
解决方法 $*具有所有参数.你可以迭代他们
for i in $*;do    params=" $params $d/$i"doneyour_cmd $params
总结

以上是内存溢出为你收集整理的linux shell将可变参数附加到命令中全部内容,希望文章能够帮你解决linux shell将可变参数附加到命令中所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/1048794.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存