我有一个名为pids.txt的文件,其中包含以下行:
123
456
789
然后,我写了一个Python脚本,它对每一行做了一些事情。 Python脚本运行如下:
my_script.py 123 456 789 -a "something here" -b "something else"
我被困在我想要运行Unix命令的部分,将pids.txt的输出汇总到my_script.py。我想你必须和猫做点什么吗?
(这不起作用)
cat pids.txt | ./myscript.py -a "something here" -b "something else"
有什么想法吗?
答案 0 :(得分:5)
您可以使用$(command)
构造(相当于反引号:`command`):
./myscript.py $(cat pids.txt) -a "something here" -b "something else"
构造$(command)
运行命令并替换放置构造的命令的标准输出。
Bash还为您提供$(< file)
构造:
./myscript.py $(< pids.txt) -a "something here" -b "something else"
这将读取pids.txt
文件并将其内容替换为$(< ...)
构造。 (感谢这一次去glenn jackman )