ShellPy

Python和Shell交互工具
授权协议 BSD
开发语言 Python SHELL
所属分类 程序开发、 脚本编程语言
软件类型 开源软件
地区 不详
投 递 者 安泰平
操作系统 Linux
开源组织
适用人群 未知
 软件概览

ShellPy 是一款Python和Shell的交互工具。一般来说,我们会通过Subprocess、Popen或者Command模块执行一条Shell命令或脚本,然后通过返回的标准输出和错误输出来得到结果,这个可行但不直观。ShellPy直观的解决了这一问题。

shellpy的主体是Python,总体的编码和Python是一样的,想要嵌入Shell命令的时候,在命令前面加一个 ` (Tab上面那个键,一个右点号)。例如

`ls -l`

或者

`ls -l

也支持多行命令

echo test > test.txt
cat test.txt

长命令

`echo This is \
  a very long \
  line

也可以把返回结果赋值给一个变量

result = `ls -l

输出一个命令的返回码

result = `ls -l
print result.returncode

获取标准输入输出文本

result = `ls -l
result_text = result.stdout
result_error = result.stderr

逐行遍历文本

result = `ls -l
for line in result:
    print line.upper()
  • ShellPy 是一款Python和Shell的交互工具。一般来说,我们会通过Subprocess、Popen或者Command模块执行一条Shell命令或脚本,然后通过返回的标准输出和错误输出来得到结果,这个可行但不直观。ShellPy直观的解决了这一问题。 shellpy的主体是Python,总体的编码和Python是一样的,想要嵌入Shell命令的时候,在命令前面加一个 ` (Tab上面那个

 相关资料
  • 交互shell从tty读取用户输入。shell默认会读取启动文件,显示提示符和打开任务控制等。用户可以和shell交互。 脚本总是运行在非交互的shell上。同样,脚本可以访问它自己的tty,这使得在脚本中依然可以模拟出交互的shell。 #!/bin/bash MY_PROMPT='$ ' while : do echo -n "$MY_PROMPT" r

  • 问题内容: 只是想知道,是否有可能单独使用PHP创建一个交互式shell。我的意思是您在数据库,python等方面拥有类似的东西。 如果是,怎么办? 问题答案: 是的,有可能。为了进行交互,该程序必须能够等待并从 stdin中 读取用户输入。在PHP中,您可以通过向打开文件描述符来从 stdin中 读取。从一个不同的问题的答案中获得,这是PHP中的交互式用户提示的示例(当然是从命令行运行时): 当

  • 1.8. 使用 Python 的交互 Shell 既然我们已经安装了 Python , 那么我们运行的这个交互shell是什么东西呢? Python 扮演着两种角色。 首先它是一个脚本解释器, 可以从命令行运行脚本, 也可以在脚本上双击, 象运行其他应用程序一样。它还是一个交互 shell, 可以执行任意的语句和表达式。 这一点对调试、快速组建和测试相当有用。我甚至知道一些人把 Python 的交

  • 有没有办法只使用Docker Compose在容器中启动一个交互式shell?我在我的docker-compose.yml: 当我使用docker-compose up启动这个容器时,它会立即退出。是否有任何标志可以添加到命令中,或者作为的附加选项来启动交互式shell? 我知道有本机docker命令选项来实现这一点,只是好奇是否也可以只使用docker Compose。

  • 本文向大家介绍Secure Shell 交互式和基于屏幕的命令,包括了Secure Shell 交互式和基于屏幕的命令的使用技巧和注意事项,需要的朋友参考一下 示例 远程的许多命令和程序都是基于屏幕的(例如mc),或者它们需要询问密码(例如sudo),才能运行您可以使用option的这类程序-t。 爱丽丝的[sudo]密码: bin root dev etc home lib mnt opt pr

  • 问题内容: super()是否不打算与静态方法一起使用? 当我尝试类似的东西 我收到以下错误 如果我将静态方法更改为类方法,并将类实例传递给super(),则一切正常。我是在这里错误地调用super(type)还是缺少我想要的东西? 问题答案: 的简短答案 我是在这里错误地调用super(type)还是缺少我想要的东西? 是:是的,您打错了它的名称……而且(实际上是 因为 ),您缺少某些内容。 但

  • 由于A-Frame能支持各种平台、设备和输入方法。与2D网页不同,虚拟现实的交互方式是无限的。对于电脑、平板和手机,我们只需要考虑鼠标和 触摸输入,对于Cardboard,我们只需要考虑单个按钮,而对于更为复杂的VR设备,我们可以做任何事情:抓、扔、擦、转、戳、伸、压等等动作,就像人在现实世界中一样。 更进一步,混合现实中的跟踪和自定义控制器甚至提供了超出现实的交互方式! 我们在本节中可以做的是过

  • 问题内容: 我需要确定调用我的Python脚本的外壳是否处于交互模式。如果它处于交互模式,则程序应将输出通过管道传递到less(1)以便于阅读。如果没有,它应该只将其输出打印到stdout,以便将其通过管道传输到打印机,文件或其他寻呼机。 在shell脚本中,我将检查是否定义了提示变量$ PS1,或者在$-变量中存储的标志中寻找-i选项。 从Python内部测试交互性的首选方法是什么? 问题答案: