是否可以将Python脚本中的文本作为可执行命令输出到终端?

布莱尔23

具体来说,我想要一个Python脚本,该脚本接受来自用户的字符串并将该字符串解释为终端中的命令。换句话说,我的脚本应该可以按以下方式使用:

python testScript.py "command -arg1 -arg2 -arg3"

输出应如下所示:

command -arg1 -arg2 -arg3

它使用3个参数执行命令:arg1,arg2和arg3。

IE,

python testScript.py "ls -lah"

输出当前目录的权限。

同样地,

python testScript.py "/testarea ls -lah"

将输出目录“ / testarea”的权限

有什么建议或模块吗?

布莱尔23

这是我想出的最好答案。我赞成说使用该subprocess模块或有不错选择的任何人

import subprocess, threading

class Command(object):
    def __init__(self, cmd):
        self.cmd = cmd
        self.process = None

    def run(self, timeout):
        def target():
            print 'Thread started'
            self.process = subprocess.Popen(self.cmd, shell=True)
            self.process.communicate()
            print 'Thread finished'

        thread = threading.Thread(target=target)
        thread.start()

        thread.join(timeout)
        if thread.is_alive():
            print 'Terminating process'
            self.process.terminate()
            thread.join()
        print self.process.returncode

#This will run one command for 5 seconds:
command = Command("ping www.google.com")
command.run(timeout=5)

这将使ping www.google.com命令运行5秒钟,然后超时。创建命令时,可以在列表中添加任意数量的参数,并用空格分隔。

这是命令的示例ls -lah

command = Command("ls -lah")
command.run(timeout=5)

以及一次运行多个命令的示例:

command = Command("echo 'Process started'; sleep 2; echo 'Process finished'")
command.run(timeout=5)

简单而强大,正是我所喜欢的!

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

bash脚本中的读取命令不作为读取命令执行,而直接将文本输出到命令行

来自分类Dev

在Linux中是否可以为“开箱即用”的程序提供可执行命令?

来自分类Dev

在python脚本中执行命令

来自分类Dev

Python脚本中的Sudo执行命令

来自分类Dev

没有终端输出的执行命令

来自分类Dev

在C#中是否可以将执行命令存储在列表中并循环执行

来自分类Dev

将python脚本输出同时输出到文本文件和命令窗口

来自分类Dev

在Linux中查找并执行命令。是否可以通过管道2查找和执行命令

来自分类Dev

我可以使用shell或python脚本在chroot中执行命令吗?

来自分类Dev

从Netlogo在终端中执行命令

来自分类Dev

如何制作一个可以打开终端窗口并在其中执行命令的脚本?

来自分类Dev

如何制作一个可以打开终端窗口并在其中执行命令的脚本?

来自分类Dev

通过python脚本在命令行中执行sbt并输出到文件

来自分类Dev

如何在Python脚本中执行命令?

来自分类Dev

如何在cronjob中执行命令以在终端中显示输出

来自分类Dev

您是否可以将多个可执行脚本放在一个目录中,并通过采购该目录使所有这些命令可用?

来自分类Dev

正常执行命令后,如何在终端中保存上次执行命令的输出?

来自分类Dev

将时间命令的结果输出到bash脚本中的变量

来自分类Dev

执行命令时如何隐藏终端输出?

来自分类Dev

快速执行命令后获取终端输出

来自分类Dev

执行命令时如何隐藏终端输出?

来自分类Dev

python-执行命令并获取输出

来自分类Dev

从脚本在子外壳中执行命令

来自分类Dev

Shell脚本:在“屏幕”中执行命令

来自分类Dev

BASH脚本-在变量中执行命令

来自分类Dev

在脚本中执行命令时出错

来自分类Dev

执行完命令后,是否可以将命令的输出保存到文件中?

来自分类Dev

执行完命令后,是否可以将命令的输出保存到文件中?

来自分类Dev

当可以在我的bash中执行命令时,Bash脚本找不到命令

Related 相关文章

  1. 1

    bash脚本中的读取命令不作为读取命令执行,而直接将文本输出到命令行

  2. 2

    在Linux中是否可以为“开箱即用”的程序提供可执行命令?

  3. 3

    在python脚本中执行命令

  4. 4

    Python脚本中的Sudo执行命令

  5. 5

    没有终端输出的执行命令

  6. 6

    在C#中是否可以将执行命令存储在列表中并循环执行

  7. 7

    将python脚本输出同时输出到文本文件和命令窗口

  8. 8

    在Linux中查找并执行命令。是否可以通过管道2查找和执行命令

  9. 9

    我可以使用shell或python脚本在chroot中执行命令吗?

  10. 10

    从Netlogo在终端中执行命令

  11. 11

    如何制作一个可以打开终端窗口并在其中执行命令的脚本?

  12. 12

    如何制作一个可以打开终端窗口并在其中执行命令的脚本?

  13. 13

    通过python脚本在命令行中执行sbt并输出到文件

  14. 14

    如何在Python脚本中执行命令?

  15. 15

    如何在cronjob中执行命令以在终端中显示输出

  16. 16

    您是否可以将多个可执行脚本放在一个目录中,并通过采购该目录使所有这些命令可用?

  17. 17

    正常执行命令后,如何在终端中保存上次执行命令的输出?

  18. 18

    将时间命令的结果输出到bash脚本中的变量

  19. 19

    执行命令时如何隐藏终端输出?

  20. 20

    快速执行命令后获取终端输出

  21. 21

    执行命令时如何隐藏终端输出?

  22. 22

    python-执行命令并获取输出

  23. 23

    从脚本在子外壳中执行命令

  24. 24

    Shell脚本:在“屏幕”中执行命令

  25. 25

    BASH脚本-在变量中执行命令

  26. 26

    在脚本中执行命令时出错

  27. 27

    执行完命令后,是否可以将命令的输出保存到文件中?

  28. 28

    执行完命令后,是否可以将命令的输出保存到文件中?

  29. 29

    当可以在我的bash中执行命令时,Bash脚本找不到命令

热门标签

归档