python 调用 shell python shell 间变量传递

shell命令如何正确调用python脚本并传递参数 工作上很多时候,需要将python脚本部署到Linux上面,然后在Linux上面使用shell命令启动python脚本。对于不需要传递参数的python脚本,执行方法有多种,这里暂时不详述了。而本文重点要提的是,对于那种需要传递参数才能正常运行的python脚本,使用shell命令如何才能正常运行对应的python脚本呢?3. https://www.baidu.com:表示传递给run.py脚本的参数为该链接;本文是该专栏的第20篇,后面会持续分享python的各种干货知识,值得关注。 阅读详情

python -> shell:

1.环境变量

  1. import os  
  2. var=123或var=’123’  
  3. os.environ[’var’]=str(var)  #environ的键值必须是字符串   
  4. os.system(’echo $var’)  
import os
var=123或var=’123’
os.environ[’var’]=str(var)  #environ的键值必须是字符串
os.system(’echo $var’)


2.字符串连接

  1. import os  
  2. path=’/root/a.txt’  
  3. var=[1]  
  4. var=’bash’  
  5. os.system(’echo ’ + path)                  #注意echo后有空格   
  6. os.system(‘echo ‘ + str(var[0]))  
  7. os.system(’echo ’ + var + ’ /root/c.sh’) #注意echo后和/root前有空格   
import os
path=’/root/a.txt’
var=[1]
var=’bash’
os.system(’echo ’ + path)                  #注意echo后有空格
os.system(‘echo ‘ + str(var[0]))
os.system(’echo ’ + var + ’ /root/c.sh’) #注意echo后和/root前有空格 

3.通过管道
  1. import os  
  2. var=’123’  
  3. os.popen(’wc -c’, ’w’).write(var)  
import os
var=’123’
os.popen(’wc -c’, ’w’).write(var)

4.通过文件
  1. output = open(‘/tmp/mytxt’, ‘w’)  
  2. output.write(S)      #把字符串S写入文件   
  3. output.writelines(L) #将列表L中所有的行字符串写到文件中   
  4. output.close()  
output = open(‘/tmp/mytxt’, ‘w’)
output.write(S)      #把字符串S写入文件
output.writelines(L) #将列表L中所有的行字符串写到文件中
output.close()

5.通过重定向标准备输出
  1. buf = open(’/root/a.txt’, ’w’)  
  2. print >> buf, ‘123\n’, ‘abc’  
buf = open(’/root/a.txt’, ’w’)
print >> buf, ‘123\n’, ‘abc’

  1. print >> open(‘/root/a.txt’, ‘w’), ‘123\n’, ‘abc’ #写入或生成文件   
  2. print >> open(‘/root/a.txt’, ‘a’), ‘123\n’, ‘abc’ #追加  
print >> open(‘/root/a.txt’, ‘w’), ‘123\n’, ‘abc’ #写入或生成文件
print >> open(‘/root/a.txt’, ‘a’), ‘123\n’, ‘abc’ #追加

shell -> python:

1.管道

  1. import os  
  2. var=os.popen(’echo -n 123’).read( )  
  3. print var  
import os
var=os.popen(’echo -n 123’).read( )
print var

2.
  1. import commands  
  2. var=commands.getoutput(’echo abc’)       #输出结果   
  3. var=commands.getstatusoutput(’echo abc’) #退出状态和输出结果  
import commands
var=commands.getoutput(’echo abc’)       #输出结果
var=commands.getstatusoutput(’echo abc’) #退出状态和输出结果

3.文件
  1. input = open(‘/tmp/mytxt’, ‘r’)  
  2. S = input.read( )      #把整个文件读到一个字符串中   
  3. S = input.readline( )  #读下一行(越过行结束标志)   
  4. L = input.readlines( ) #读取整个文件到一个行字符串的列表中  
input = open(‘/tmp/mytxt’, ‘r’)
S = input.read( )      #把整个文件读到一个字符串中
S = input.readline( )  #读下一行(越过行结束标志)
L = input.readlines( ) #读取整个文件到一个行字符串的列表中
shell脚本调用python脚本,并传参 shell脚本调用python脚本,并传参。 本文以删除指定文件夹下,以当前时间为基准 的指定天数以前的文件,包括空文件夹 立即下载

相关推荐

python调用shell命令-「Python」6种python中执行shell命令方法

Python调用Shell命令有如下几种方式:第一种:os.system("The command you want").这个调用相当直接,且是同步进行的,程序需要阻塞并等待返回。返回值是依赖于系统的,直接返回系统的调用返回值,所以windows和linux是不一样的。第二种:os.popen(command[,mode[,bufsize]])先给大家看个例子可以看出,pop...

weixin_37988176的博客 1038

使用python脚本传递参数 -- 三种方式可收藏

说明:使用sys.argv必须按照先后的顺序传入对应的参数;sys.argv则封装了传入的参数数据,作为数组的方式已经传入。

lhzhqq的博客 1765

python执行shell命令

1.不需要获取命令执行结果 os.system(command) # -*- coding:utf-8 -*- import os command='adb devices' tt=os.system(command) print(tt) print(type(tt)) 输出结果为: 0 <class 'int'> 2.需要获取命令执行结果 tt=os.popen(command) # -*- coding:utf-8 -*- import os command='adb devic

liulanba的博客 1万+

python执行shell并获取结果

本文详细介绍了python执行shell并获取结果的方法,介绍了如何使用Shell编程,给出了详细的代码示例。

m0_72958694的博客 2181

Python系列】执行 Shell 命令的六种方法

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。非常期待和您一起在这个小小的网络世界里共同探索、学习和成长。💝💝💝 ✨✨ 欢迎订阅本专栏 ✨✨。

CSDN站内信: https://i.csdn.net/#/msg/chat/qyj19920704 2万+

python 调用 shell python shell 间变传递

转自:http://blog.csdn.net/ysdaniel/article/details/7970978 python -> shell: 1.环境变量 [python] view plaincopy import os   var=123或var=’123’   os.environ[’var’]=str(v

Hello World! 2492

shellshell调用python脚本,并且向python脚本传递参数

文章目录1.shell调用python脚本,并且向python脚本传递参数 1.shell调用python脚本,并且向python脚本传递参数 shell中: #定义变量 para1='' para2='' #调用py脚本,并传递参数 python test.py $para1 $para2 python中: import sys #定义main,接收2个参数 def main(canshu1, canshu2) ..... #通过sys.argv获得入参 main(sys.argv[1], sy

m0_45406092的博客 1万+

shellshell调用python脚本--参数传递

在工作中,我们会碰到使用shell脚本调用python脚本,那么如何使用? 1.shell单纯的调用python脚本,不传递参数 shell: file_path="/home/chen_lib" python_name="test.py" python $file_path/$python_name 对的,就这么简单,file_path是你的公共目录,所有文件都放在这个...

J小白的博客 6973

Python 如何用 shell 调用脚本中的函数+参数传递

【前言-给自己看的屁话】 最近玩python 遇到了这个问题,在网上查了下,大部分博客文章都是讲的同一种方法,看起来一知半解的,所以觉得自己有必要整理一下。 1、问题描述 无论是在windows下也好,Linux下也好,都有shell,windows下是powershell,Linux下是bash等。windows下的python 可以有IDLE,Linux下的python一般没有(这是我目前的认知,仅供参考,如有不当,还望不吝赐教)。 有时候,我们想用自己以前在写的python 脚本里面的函数时,不想再

一些笔记 8154

如何调用python中的shell脚本?

本文从多个角度分析了如何在Python调用Shell脚本,以及如何在Shell脚本中调用Python程序,同时还介绍了PythonShell脚本之间的参数传递和数据传递。其中,'./test.sh'是要执行的Shell脚本的路径。其中,'test.py'是要调用Python程序的文件名,$(python test.py)表示执行Python程序并返回执行结果。其中,'./test.sh'是要执行的Shell脚本的路径,shell=True表示需要在Shell环境下执行命令。

m0_59236127的博客 3322

shell调用python脚本,并且向python脚本传递参数

1.shell调用python脚本,并且向python脚本传递参数: shell中: python test.py $para1 $para2 python中: import sys def main($canshu1, $canshu2) ..... main(sys.argv[1], sys.argv[2]) 2.使用shell调用python中的函数: p...

流风回雪的博客 5528

shellpython传递变量方法

shellpython传递变量方法   (2013-02-12 18:02:47) 转载▼   分类: shell_vim python -> shell: 1.环境变量     [python] view plaincopy import os   var=123或var=

jfkidear的专栏 4592

shellpython传递参数

shellpython传递参数

Blankit1的博客 4528

python--python脚本中调用shell命令

文章目录python脚本调用shell命令os.system()os.popen()subprocess.call()subprocess.Popen()commands 参考: python脚本调用shell命令 os.system() os.system()执行成功会自动返回值0,执行的shell命令结果会打印出来,例如执行如下代码: import os if __name__ == "__...

liuyingying0418的博客 6066

pythonshell的联系_pythonshell变量互相传递的几种方法

这篇文章主要介绍了pythonshell变量互相传递方法,使用了环境变量、管道等方法python -> shell:1.环境变量复制代码代码如下:import osvar=123或var='123'os.environ['var']=str(var) #environ的键值必须是字符串os.system('echo $var')复制代码代码如下:import osvar=123或var=...

weixin_39626089的博客 146
上一篇: python按行读取文件 去掉换行符"\n"
下一篇: 找出两文件中相同的行,两文件不同的行,文件1有文件2没有的行
ysdaniel
博客等级 码龄18年 232粉丝 116原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值