python 调用shell命令三种方法】的更多相关文章

#!/usr/bin/python是告诉操作系统执行这个脚本的时候,调用/usr/bin下的python解释器: #!/usr/bin/env python这种用法是为了防止操作系统用户没有将python装在默认的/usr/bin路径里. python调用shell命令的方法有许多 1.1   os.system(command)        在一个子shell中运行command命令,并返回command命令执行完毕后的退出状态.这实际上是使用C标准库函数system()实现的.这个函数在执…
python调用shell命令方法 1.os.system(cmd) 缺点:不能获取返回值 2.os.popen(cmd) 要得到命令的输出内容,只需再调用下read()或readlines()等  例:a=os.popen(cmd).read() 3.commands 模块,其实也是对popen的封装. 此模块主要有如下方法:commands.getstatusoutput(cmd) 返回(status, output).commands.getoutput(cmd) 只返回输出结果comma…
Python经常被称作“胶水语言”,因为它能够轻易地操作其他程序,轻易地包装使用其他语言编写的库,也当然可以用Python调用Shell命令. 用Python调用Shell命令有如下几种方式: 第一种:os.system os.system("The command you want"). 这个调用相当直接,且是同步进行的,程序需要阻塞并等待返回.返回值是依赖于系统的,直接返回系统的调用返回值,所以windows和linux是不一样的. 第二种:os.popen os.popen(co…
记录 python 调用 shell 命令的方法 加载 os 模块, 使用 os 类 import os; os.system("ls /");…
在python程序中调用shell命令,是件很酷且常用的事情…… 1. os.system(command) 此函数会启动子进程,在子进程中执行command,并返回command命令执行完毕后的退出状态,如果command有执行内容,会在标准输出显示.这实际上是使用C标准库函数system()实现的. 缺点:这个函数在执行command命令时需要重新打开一个终端,并且无法保存command命令的执行结果. 实例:os.system('ls -l *') 2. os.popen(command,…
Python调用shell指令 方法一.使用os模块的system方法:os.system(cmd),其返回值是shell指令运行后返回的状态码,int类型,0表示shell指令成功执行,256表示未找到,该方法适用于shell命令不需要输出内容的场景. 举例说明: 1. 列举当前目录下的所有文件. 1 import os 2 val = os.system('ls -al') 3 print val 没有找到时,sh返回的状态码是1,而适用python调用,返回的是:256 方法二.使用os.…
Python开发中时长遇到要下载文件的情况,最常用的方法就是通过Http利用urllib或者urllib2模块. 当然你也可以利用ftplib从ftp站点下载文件.此外Python还提供了另外一种方法requests. 下面来看看三种方法是如何来下载zip文件的:方法一: import urllib import urllib2 import requests print "downloading with urllib" url = 'http://***/test/demo.zip…
python程序中调用shell命令,是件很酷且常用的事情今天来总结一下   1.使用os模块 的  system         此函数会启动子进程,在子进程中执行command,并返回command命令执行完毕后的退出状态.如果command有执行内容,会在标准输出显示.这实际上是使用C标准库函数system()实现的.      system方法会创建子进程运行外部程序,方法只返回外部程序的运行状态.这个方法比较适用于外部程序没有输出结果的情况 >>> import os>&…
python字符串连接的方法,一般有以下三种:方法1:直接通过加号(+)操作符连接website=& 39;python& 39;+& 39;tab& 39;+& 39; com& 39;方法2 python字符串连接的方法,一般有以下三种: 方法1:直接通过加号(+)操作符连接 1 website = 'python' + 'tab' + '.com' 方法2:join方法 1 2 listStr = ['python', 'tab', '.com'] …
最近项目的两次版本迭代中,根据业务需求的变化,需要对数据库进行更新,两次分别使用了不同的方式进行更新. 第一种:使用python的MySQLdb模块利用原生的sql语句进行更新 import MySQLdb #主机名 HOST = '127.0.0.1' #用户名 USER = "root" #密码 PASSWD = " #数据库名 DB = "db_name" # 打开数据库连接 db=MySQLdb.connect(HOST,USER,PASSWD,D…
1.subprocess介绍 官方推荐 subprocess模块,os.system(command) 这个废弃了 亲测 os.system 使用sed需要进行字符转义,非常麻烦 python3 subprocess模块使用 2.subprocess模块使用 官网说明文档  subprocess.call 和 subprocess.check_call执行命令,返回状态码.两者唯一的区别在于返回值.执行成功,都返回 0:执行失败,check_call 将raise出来CalledProcessE…
linux系统下进入python交互式环境: 一.os 模块 1.1.os模块的exec方法簇: python交互界面中: In [1]: import os In [2]: os.exec os.execl os.execlp os.execv os.execvp os.execle os.execlpe os.execve os.execvpe In [2]: os.execl? Type: function String form: <function execl at 0xb73673e…
preface: 忙于近期的任务,须要用到libsvm的一些命令.如在终端执行java svm_train train_file model_file. pythonsubset.py file train_num train_file test_file等命令.但file的准备又是通过python写好的.file须要是libsvm可以接受的格式.故用python写好特征.转为libsvm可以接受的格式.生成file,然后在终端调用训练.故想着直接在python代码里面直接执行终端的命令.博友博…
class Car:#外部类 class Door:#内部类 def open(self): print('open door') class Wheel: def run(self): print('car run') if __name__=="__main__": car=Car()#实例化外部类 backDoor=Car.Door()#实例化内部类 第一种方法 frontDoor=car.Door()#因为car已经实例化外部类,再次实例化Car的内部类 第二种方法 backD…
本文转自:http://www.jb51.net/article/37404.htm 1.system(执行shell 命令)相关函数 fork,execve,waitpid,popen表头文件 #include<stdlib.h>定义函数 int system(const char * string);函数说明 system()会调用fork()产生子进程,由子进程来调用/bin/sh-cstring来执行参数string字符串所代表的命令,此命令执行完后随即返回原调用的进程.在调用syst…
1.用os.system(cmd)   不过取不了返回值 2.用os.popen(cmd)   要得到命令的输出内容,只需再调用下read()或readlines()等 如a=os.popen(cmd).read() 3.用 commands 模块.其实也是对popen的封装.此模块主要有如下方法 commands.getstatusoutput(cmd) 返回(status, output). commands.getoutput(cmd) 只返回输出结果 commands.getstatus…
方法一:直接使用<%=%>调用(ASPX页面) 前台JS,代码如下: <script type="text/javascript"> var methodStr = "<%=BehindMethod() %>"; alert(methodStr); </script> 后台方法,代码如下: public static string BehindMethod() { return "这是一个后台的方法"…
1.使用del语句删除元素 >>> i1 = ["a",'b','c','d'] >>> del i1[0] >>> print(i1) ['b', 'c', 'd'] >>> del语句将值从列表中删除后,就再也无法访问它了. 2.使用pop()删除元素 pop()可删除列表末尾的元素,并让你能够接着使用它.食欲弹出(pop)源自这样的类比:列表就是一个栈,而删除列表末尾的元素相当于弹出栈顶元素. >>…
栗子: # 题目:将一个数组逆序输出. # # 程序分析:用第一个与最后一个交换. import random list =[random.randint(0,100) for _ in range(21)] print(list) #数应该先排序 def bubbleSort(arr): for i in range(1, len(arr)): for j in range(0, len(arr)-i): if arr[j] > arr[j+1]: arr[j], arr[j + 1] = a…
定义字典 dic = {'a':"hello",'b':"how"} 法一: for key in dic: print key,dic[key] # a hello 输出中间有空格 print key + str(dic[key]) # ahello 输出中间没空格 法二: for (k,v) in dic.items(): print "dic[%s]="%k,v #dic[a]= hello 法三: for k,v in dic.iteri…
1)%格式化方法 >>> a = "this is %s %s" % ("my", "apple") >>> a 'this is my apple' 2)内置方法format(): >>> a = "this is {} {}".format("apple","my") >>> a 'this is apple m…
strip()    replace()      re.sub() 1.replace()是python的内置函数,字符类型.replace(old,new) s1="你好2017" s1.replace("2017","2018") 2. strip()删除指定字符,然只删除位于首位的字符.如果首位有空格,就无法删除这些字符了,不带任何参数时删除空白符(包括'\n', '\r',  '\t',  ' '),但是只能删除开头和结尾的,不能删除字…
1.startfile方法 import os os.startfile("C:\Program Files (x86)\Google\Chrome\Application\chrome.exe") 2.system方法 import os os.system(r'C:\"Program Files (x86)"\"Google"\"Chrome"\"Application"\chrome.exe') 3.…
1. 列表去重 li = [] for item in my_list: if item not in li: li.append(item) 2.集合去重 list(set(my_list)) 3.字典去重 dict1 = dict.fromkeys(my_list, '') li = dict1.keys…
import os os.makedirs('./image/', exist_ok=True) IMAGE_URL = "http://image.nationalgeographic.com.cn/2017/1122/20171122113404332.jpg" def urllib_download(): from urllib.request import urlretrieve urlretrieve(IMAGE_URL, './image/img1.png') def re…
1.+号连接 a="hello," b="world!" c=a+b print(c) 有一点需要注意的是,字符串类型是不可变的,所以每一次应用加号连接字符串都会生成一个新的字符串,连接多个字符串时,效率低下就是必然的了. 3.join()连接 a="hello," b="world!" c=''.join([a,b]) print(c) 连接大量字符串时,join是性能最好的选择.…
from:http://www.oklinux.cn/html/developer/shell/20070626/31550.htmlawk中使用的shell命令,有2种方法: 一.使用所以system() awk程序中我们可以使用system() 函数去调用shell命令如:awk 'BEGIN{system("echo abc")}' fileecho abc 就会做为“命令行”,由shell来执行,所以我们会得到以下结果: root@ubuntu:~# awk 'BEGIN{sy…
最近在使用python进行网络编程开发一个通用的tcpclient测试小工具.在使用socket进行网络编程中,如何判定对端发送一条报文是否接收完成,是进行socket网络开发必须要考虑的一个问题.这里,简要介绍一下判别数据接收接收完成常用的三种方法: 1.基础数据接收法: 使用基础数据接收法时,当与服务socket断开连接时,会接收到空字符串.因此,可以根据此特点,在程序中加入循环,一直接收数据,直到数据发送端关闭socket连接.适用场景:客户端和服务器的链接为短链接(即一次socket通讯…
这篇文章主要介绍了python中执行shell的两种方法,有两种方法可以在Python中执行SHELL程序,方法一是使用Python的commands包,方法二则是使用subprocess包,这两个包均是Python现有的内置模块.需要的朋友可以参考借鉴,下面来一起看看吧. 一.使用python内置commands模块执行shell commands对Python的os.popen()进行了封装,使用SHELL命令字符串作为其参数,返回命令的结果数据以及命令执行的状态: 该命令目前已经废弃,被s…
1.用python语言作为第三方,调用shell 在python2.x中,可以通过包commands来进行调用shell命令.如下: cmd就是你要调用的shell命令,把环境配置好,输入正确的命令格式,就可以作为一个第三方程序,来进行命令的调用了. 但是在python3.x中取消了commands包,所以这种方式肯定是不能用了,解决方法很多,这边推荐一种万能的方式. 同理,你只要管好,环境和命令正确就可以了.这个命令在最新版的python已经逐渐被淘汰了.它最大的缺点是异步,有时候你的逻辑很正…