【问题标题】:How to run sh scripts on python?如何在 python 上运行 sh 脚本?
【发布时间】:2020-01-10 07:49:39
【问题描述】:

假设我有一个 python 程序,我想执行此操作

grep "username" accounts.txt

1 行

accounts.txt 与我的 py 文件位于同一文件夹中。我知道在 C 中有一些像 System(grep "username" accounts.txt) 这样的函数,并且想知道在 python 中是否有类似的东西。通常python读取accounts.txt太慢,因为它是一个大文件。但是在 bash 或 linux 中它要快得多,所以想知道我是否可以使用 bash 来查找用户名行,然后 python 将其打印出来。

如果没有,什么是集成大型用户名文件的有效方法,我可以在我的 python 代码中调用该文件以打印出与之关联的行。

【问题讨论】:

标签: python bash python-2.7 window


【解决方案1】:

使用commands 模块或subprocess 模块执行命令。

注意:命令模块已从 python3 中删除。因此,如果您使用的是 python3,我建议您使用 subprocess 模块,因为 python2 具有这两个模块。

【讨论】:

    【解决方案2】:
    import os
    os.system('grep username accounts.txt')
    

    import subprocess
    subprocess.call('grep username accounts.txt', shell=True)
    

    应该可以..我没有经常使用它,但我知道(出于某种原因)使用 subprocess 更好。

    os.system('grep Hello test.txt')
    

    输出:Hello World!

    subprocess.call('grep Hello test.txt',shell=True)
    

    输出:Hello World!

    【讨论】:

    • ''grep' 不被识别为内部或外部命令,'没有线索。我有 bash 它在那里工作得很好,只是在 python 中没有
    • 见编辑..确保你的报价是正确的..适合我
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-24
    • 1970-01-01
    • 1970-01-01
    • 2020-04-16
    • 1970-01-01
    相关资源
    最近更新 更多