如何在python中通过shell管道接收参数?

时间:2011-05-24 06:17:16

标签: python linux shell pipe

我想做这样的事情:

find -name "foo*" | python main.py

并访问find程序找到的所有文件。我如何在Python中访问它?

5 个答案:

答案 0 :(得分:19)

import sys
for line in sys.stdin:
    print line

答案 1 :(得分:4)

我喜欢使用$(...)来依赖于其他程序的命令行参数。我认为这适用于您的计划python main.py $(find -name "foo*")。找到here

答案 2 :(得分:3)

使用sys.stdin.read()或raw_input()

管道只是将stdin文件描述符更改为指向左侧命令正在写入的管道。

答案 3 :(得分:1)

我认为你可以做到:

import sys
print sys.stdin.readlines() #or what you want

答案 4 :(得分:0)

我相信fileinput可能就是你想要的。