【从python编译cpp失败但不在shell中】教程文章相关的互联网学习教程文章

Shell脚本从终端调用Python,但从Cron失败【代码】

我有一个shell脚本,因此:export PYTHONPATH=/usr/local/lib/python cd /home/skip/workspace/UAM for file in *.txt doecho $file >>log.fil/usr/bin/python push.py -s $file done return 0它可以从命令行正常运行.将每个文件名打印到日志文件,并按预期运行python push.py命令. (它创建一个目录并填充它.) 但是,当我尝试使用此crontab从cron运行它时:3 * * * * /home/skip/workspace/UAM/RunAllTest.sh 我在日志文件中看到条目,...

如何使用python自动执行shell输入?【代码】

我正在使用python自动执行一些任务,但遇到了一些障碍.我要自动化的任务之一是需要用户在shell中输入. 要求是使用电子邮件地址作为参数(足够简单)运行命令,然后要求您使用该电子邮件地址的密码进行身份验证.您如何模拟用户输入以提供密码? 后面还有一些菜单会询问选项,输入只是重复按回车即可.如何模拟?请记住,此窗口将不会始终具有焦点.解决方法:我不确定在第二部分中您要问什么,但是可以使用pexpect模块控制子流程.例如:#!/usr...

我可以在ipython shell中重做/撤消吗?

bpython中的一项功能称为倒带. 是否有一些类似的键绑定?解决方法:简而言之:不. 通过重新运行您输入的所有内容(减去最后一位),bpython的倒带在幕后起作用.这是一个很好的功能,但是当您可以随时删除或替换任何变量时,它并不是那么重要. 如果确实要重新运行除最后一行以外的所有内容,则可以使用%reset,然后使用%rerun 1-17(如果之前要运行18行).

Python子进程:与Shell脚本进行交互【代码】

我有一个shell脚本,它询问用户太多问题. 我想回答以-结尾的每个问题,以-结尾的每个问题?与日元. 例如.,Enter your name: enterEnter your email: enter...Are you sure these details are correct? yenter我已经开始了子流程:subprocess.Popen(shell=True, stdout=sp.PIPE, stderr=sp.STDOUT, stdin=sp.PIPE)如何查询脚本的输出,等待问题出现?解决方法:尝试这样的事情(我还没有测试过):import pexpectchild = pexpect.spawn('y...

为什么python子进程输出与shell不同?【代码】

我正在使用子进程模块来查找进程是否正在运行.但是当不存在查找过程时,结果会有所不同. 例如,在外壳中,如果不存在进程python test.py,则ps -ef | grep python | grep test | awk{print $2}’的输出为空.但是在python中:cmd="ps -ef|grep python|grep test|awk '{print $2}'" vp=subprocess.Popen(cmd,stdout=subprocess.PIPE,shell=True) r=vp.communicate()[0]输出r不是None.它是执行cmd的shell的pid. 那么如何获得理想的结果呢?...

如何将python ImportError捕获为Shell错误【代码】

我有一个以下脚本,用于检查是否已安装python模块.{ipython -c 'from package import module' && echo "Successful import"} || echo "package not found!"这是bash的典型try..catch语法.如果命令&&会起作用,它将在之后执行命令,否则在||之后执行命令. 但是在这种情况下,是否安装了软件包,或者我应该说命令是否ipython -c 'from package import module'返回None或ImportError,bash将其读取为成功执行并输出“成功导入” 如何使用bas...

python-(Buildbot)无法使用ShellCommand激活virtualenv【代码】

返回错误“ OSError:否此类文件或目录”.我们试图通过shellCommand中的builder命令激活新创建的虚拟环境venvCI,似乎无法激活virtualenv venvCI.在这种环境中只是新手,所以请帮助我们.谢谢.from buildbot.steps.shell import ShellCommandfactory = util.BuildFactory()# STEPS for example-slave:factory.addStep(ShellCommand(command=['virtualenv', 'venvCI']))factory.addStep(ShellCommand(command=['source', 'venvCI/bin/a...

python-正则表达式用于解析诸如字符串之类的shell命令【代码】

我正在尝试解析看起来像shell命令的字符串.这些命令的一般结构如下:command value -arg1name arg1val -arg2name arg2val ... -argMname argMval这是一个例子abc cmdh1521 -x 123 -y sadg -zzz 563sd我正在使用Python re模块来解析,搜索和分组字符串,以便得到这样的输出,(command, value, ((-arg1name, arg1val), (arg2name, arg2val), ... (argMname, argMval))我尝试了以下命令集,但是我的输出不是我想要的.import re cmd = "abc...

Python Popen在复合命令(PowerShell)中失败【代码】

我正在尝试使用Python的Popen更改工作目录并执行命令.pg = subprocess.Popen("cd c:/mydirectory ; ./runExecutable.exe --help", stdout=subprocess.PIPE, stderr=subprocess.STDOUT, shell=True) buff,buffErr = pg.communicate()但是,powershell返回“系统找不到指定的路径”.该路径确实存在. 如果我跑步pg = subprocess.Popen("cd c:/mydirectory ;", stdout=subprocess.PIPE, stderr=subprocess.STDOUT, shell=True)它返回相同...

如何将rfcomm shell命令的结果放入python中的变量中?【代码】

我正在python中使用此脚本以连接到蓝牙设备,然后获取数据,但是我想知道此shell命令的结果以便进行下一个工作import os import time import signal import subprocessp = subprocess.Popen("sudo rfcomm connect /dev/rfcomm0 XX:XX:XX:XX:XX:XX 1",shell=True) (stderr,stdout) = p.communicate() print 'stderr: [%s]' % stderr print 'stdout: [%s]' % stdout time.sleep(5) while True:print "Device is ready"time.sleep(5)这段...

PowerShell包装器将管道输入定向到Python脚本【代码】

我正在尝试编写一个小工具,使我可以将命令输出通过管道传递到剪贴板.我已经阅读了Stack Overflow上的multiple answers,但是它们对我不起作用,因为它们不包括管道,或者因为它们不使用函数,或者它们只是抛出错误(或者我只是搞砸了) ).我举起了PowerShell的手,决定选择Python. 我创建了一个名为copyToClipboard.py的Python脚本:import sys from Tkinter import Tkif sys.stdin.isatty() and len(sys.argv) == 1:#We're checking for ...

python-代码以交互方式运行时显示结果,但从shell运行时则不显示结果【代码】

我从另一个张贴者那里借用了这个小科学符号脚本:Display a decimal in scientific notation.def format_e(n):a = '%E' % nreturn a.split('E')[0].rstrip('0').rstrip('.') + 'E' + a.split('E')[1]format_e(Decimal('40800000000.00000000000000')) # '4.08E+10'format_e(Decimal('40000000000.00000000000000')) # '4E+10'format_e(Decimal('40812300000.00000000000000'))当从终端或Python Shell中将其作为模块进行操作时,该函...

使用Python打开Shell环境,运行命令并退出环境【代码】

我正在尝试使用python自动化过程.如果我只是在终端机中,工作流程如下所示:user:> . /path/to/env1.sh user:> python something.py user:> exit user:> . /path/to/env2.sh user:> python something2.py user:> exit 等更多的步骤.每个env.sh都会生成一个带有大量环境变量以及当前目录中未设置内容的新脚本.我很确定我需要使用子流程,但是我不确定该如何进行.理想情况下,工作流程应为:打开新的外壳->运行一些命令->退出外壳->根据...

如何从python脚本中的shell脚本返回值【代码】

我有一个python脚本,它需要shell脚本中的值. 以下是外壳程序脚本(a.sh):#!/bin/bash return_value(){value=$(///some unix command)echo "$value" }return_value以下是python脚本:Import subprocess answer = Subprocess.call([‘./a.sh’]) print("the answer is %s % answer") 但是它不起作用.错误是“ ImportError:没有名为子进程的模块”.我猜我的版本(Python 2.3.4)很老了.在这种情况下,是否可以替代子流程?解决方法:使用...

python-在Raspberry Pi启动时启动shell脚本【代码】

我有一个发布到我本地Web服务器的python程序.该脚本在运行最新版本的raspbian 3.18的raspberry pi上运行.如何在启动时运行Python脚本? Raspbian有一个登录密码,这是我必须删除的第一件事.如果断电,我希望pi重新启动并重新开始运行脚本.我应该为此使用Raspbian吗?该脚本是pi唯一的用途.我尝试将脚本添加到/etc/init.d中,但是如果pi在启动时需要登录信息,我认为它不会以任何方式运行.解决方法:确保程序可执行chmod +x filename.py在...