我是bash的新手,所以请多多包涵。我正在尝试运行一个bash脚本,该脚本将从命令行获取输入,然后运行ac程序,并将其输出到其他c程序。例如,在命令行中,我将输入以下内容:
$ ./script.sh -flag file1 < file2
在脚本中,我将拥有:
./c_program -flag file1 < file2 | other_c_program
问题是,-flag
,file1
并且file2
需要是可变的。现在我知道for-flag
和file这很简单-我可以
FLAG=$1
FILE1=$2
./c_program $FLAG FILE1
我的问题是:有没有一种方法可以在脚本中将变量分配给file2
?
编辑:这是程序的要求,脚本被称为$ ./script.sh -flag file1 <file2
您可以./c_program
完全按照自己的方式运行,它将从父脚本继承stdin。它将从其父进程正在读取的任何位置读取。
FLAG=$1
FILE1=$2
./c_program "$FLAG" "$FILE1" | other_c_program # `< file2' is implicit
另外,引用变量扩展也是个好主意。这样,如果$FILE1
包含空格或其他棘手的字符,脚本将仍然有效。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句