我正在开发一个执行以下操作的程序:
在文件夹X中读取270文件并调用另一个程序以运行包含该文件内容的命令。例如:
$ cat X/1.txt
AAAA
BBBB
CCCC
该程序应该读取该文本(其中有270个),并且它应该在循环中执行:
$python file.py AAAA;
然后
python file.py BBBB;
然后
python file.py CCCC.
并在下一个文件上移动,如22.txt(文件不是数字,因此计数器不会有太多帮助)。
我尝试了以下内容:
function text(){
for i in $(ls Domains/);
while read line;
do
$line
f= done < Domains/$i.txt
python file.py $f
}
text;
谢谢,伙计们!
答案 0 :(得分:3)
这就是xargs
派上用场的地方:连接所有文件并将其传递到xargs中,xargs逐行将每行传递给python程序。
cat * | xargs -L1 python file.py
答案 1 :(得分:0)
这应该有效:
function text(){
for i in $(ls Domains/)
do
while read line;
do
python file.py $line
done < Domains/$i.txt
done
}