最近我试图来传递参数在这样的shell脚本:Shell:在非可选参数之后是否可以解析可选参数?
$./myscript.sh <sourcefile> <destinationfile> -o
脚本应该在的资源文件和destinationfile阅读 - 既应该是强制性的 - 然后在最后检查其他可选参数。但是,当试图用getopts
解析选项-o
时 - 它从未找到它。它总是“假”或“0”。它只在其他参数之前通过时才会识别出选项-o
!
$./myscript.sh -o <sourcefile> <destinationfile>
这是强制性的,它只能这样工作吗?当我在规则,惯例或练习脚本中搜索时,我从来没有发现这些重要信息,只有通过试验和错误才能发现它浪费了大量时间......另外我想知道如何执行复制命令过程,因为它也是混合可选参数和非可选参数
您可以在调用getopts之前始终捕获并切换前两个参数。 –
最终有意义。我试图把它们放在前面,但在拨打getopts之前忘了把它们移开。所以它不起作用。谢谢你,我马上试试这个! – Malvin