gpt4 book ai didi

Python - 带引号和管道 Grep 的子进程

转载 作者:太空宇宙 更新时间:2023-11-04 08:58:34 32 4
gpt4 key购买 nike

我在尝试将简单的 grep 命令导入 python 时遇到问题。我想在文件或列表中获取以下命令的输出。

grep -c 'some thing' /home/user/* | grep -v :0

这就是我所拥有的,但它根本不起作用......

thing = str(subprocess.Popen(['grep', '-c', 'some thing', '/home/user/*', '|', 'grep', '-v', ':0'], stdout=subprocess.PIPE)

基本上,我需要在目录中搜索文件,如果目录中的任何文件中缺少我的字符串,则返回结果。

工作代码(谢谢!!):

thing = subprocess.Popen(('grep -c "some thing" /home/user/* | grep -v ":0"' ),shell=True, stdout=subprocess.PIPE)

最佳答案

管道 | 是一个 shell 特性。您必须将 Popen 与 shell=True 一起使用才能使用它。

关于Python - 带引号和管道 Grep 的子进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27911820/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com