2014-04-23 60 views
5

我有一组文件名,我必须在我的bash脚本运行时作为命令行参数插入。有没有办法使用单独的文件提供命令行参数(如"test.txt")?如何使用文本文件获取命令行参数?

假设这些文件:fileAfileBFileCFileCFileD,让我们假设bash脚本是testBash.sh

+1

参数是在test.txt文件? –

+0

你可以更改'testBash'文件吗? –

+0

你好Rahul,是的论据是在一个test.txt文件 –

回答

3

是很容易使用xargs。假设file内容

A 
B 

和bash脚本文件s内容

echo $1 
echo $2 
echo [email protected] 

则:

cat file | xargs ./s 

A 
B 
A B 
+0

你好,非常感谢你的帮助... :)你已经清楚地提到了如何做到这一点.... :) –

+2

人们应该记得,xargs可以在任意位置将参数列表拆分为同一个命令的多个调用。所以长列表不适合。 (实际上,这在ARG_MAX附近完成,但不能保证。) – Netch

3

如果我理解正确的问题,并test.txt包含您想要的文件名列表传递给testBash.sh,你应该能够做这样的事情:

cat test.txt | testBash.sh 
+0

谢谢你Mureinik,它的工作... :) –

相关问题