寫了幾個批處理,主要是一些Android調試命令,現在想用python來搞,感覺更酷一些吧。O(∩_∩)O~
比如Ping命令:
ping www..com
用python來做,主要是使用了python標准庫中的os庫。
參見Python文檔The Python Standard Library => Generic Operating System Services => os — Miscellaneous operating system interfaces.
這里介紹的比較全面,而且這個庫我們用的也較多。
我們會用到os.system()方法:
[python]view plain
importos
cmd='cmd.exe/kpingwww..com'
os.system(cmd)
Ⅱ python怎麼運行py文件
1、首先在資源管理器里復制一下py文件存放的路徑,按下windows鍵+r,在運行里輸入cmd,回車打開命令行:
Ⅲ python中,執行命令的方法有哪些
1.
os.system()
這個方法直接調用標准C的system()函數,僅僅在一個子終端運行系統命令,而不能獲取執行返回的信息。
2.
os.popen()
這個方法執行命令並返回執行後的信息對象,是通過一個管道文件將結果返回。
3.
commands模塊
注意1:在類unix的系統下使用此方法返回的返回值(status)與腳本或命令執行之後的返回值不等,這是因為調用了os.wait()的緣故,具體原因就得去了解下系統wait()的實現了。需要正確的返回值(status),只需要對返回值進行右移8位操作就可以了。
注意2:當執行命令的參數或者返回中包含了中文文字,那麼建議使用subprocess。
4.
subprocess模塊
該模塊是一個功能強大的子進程管理模塊,是替換os.system,
os.spawn*等方法的一個模塊。
Ⅳ python 怎麼調用命令實現
在Python/wxPython環境下,執行外部命令或者說在Python程序中啟動另一個程序的方法
1、os.system(command)
os.system()函數用來運行shell命令。此命令可以方便的調用或執行其他腳本和命令
#打開指定的文件 >>>os.system('notepad *.txt')
2、wx.Execute(command, syn=wx.EXEC_ASYNC, callback=None)
若置syn為wx.EXEC_ASYNC則wx.Excute函數立即返回,若syn=wx.EXEC_SYNC則等待調用的程序結束後再返回。
callback是一個wx.Process變數,如果callback不為None且syn=wx.EXEC_ASYNC,則程序結束後將調用wx.Process.OnTerminate()函數。
os.system()和wx.Execute()都利用系統的shell,執行時會出現shell窗口。如在Windows下會彈出控制台窗口,不美觀。下面的兩種方法則沒有這個缺點。
3、import subprocess
subprocess.Popen(args, bufsize=0, executable=None, stdin=None,
stdout=None, stderr=None, preexec_fn=None, close_fds=False, shell=False,
cwd=None, env=None, universal_newlines=False, startupinfo=None,
creationflags=0)
subprocess.call ([cmd, arg1, arg2],shell=True)
Ⅳ python 以特定的用戶身份執行命令
這種功能應該是在更底層一點的操作系統層面去實現的,在擁有root許可權的情況下,你可以知道以何種身份去執行腳本,當然,腳本本身所擁有的系統許可權,是由你運行它的用戶來決定的.
打個比方,有個test.py的python腳本,你希望以guest用戶許可權去運行
那麼你完全可以寫一個shell腳本以root許可權來調用它:
例如:
#!/bin/bash
sudo -u guest python test.py
#可以更多,例如
sudo -u userA php a.php
Ⅵ 如何在命令行里運行python腳本
首先下載安裝python,建議安裝2.7版本以上,3.0版本以下,由於3.0版本以上不向下兼容,體驗較差。
2
打開文本編輯器,推薦editplus,notepad等,將文件保存成 .py格式,editplus和notepad支持識別python語法。
腳本第一行一定要寫上 #!usr/bin/python
表示該腳本文件是可執行python腳本
如果您的python目錄不在usr/bin目錄下,則替換成當前python執行程序的目錄
3
編寫完腳本之後注意調試、可以直接用editplus調試。調試方法可自行網路。腳本寫完之後,打開CMD命令行,前提是python 已經被加入到環境變數中,如果沒有加入到環境變數,請網路
4
在CMD命令行中,輸入 「python」 + 「空格」,即 」python 「;
將已經寫好的腳本文件拖拽到當前游標位置,然後敲回車運行即可
Ⅶ python 腳本怎麼執行linux命令
importos
os.system('pinglocalhost')
Ⅷ 如何執行python腳本 如何執行shell命令行
os.system("The command you want"). 這個調用相當直接,且是同步進行的,程序需要阻塞並等待返回。返回值是依賴於系統的,直接返回系統的調用返回值,所以windows和linux是不一樣的
os.popen(command[,mode[,bufsize]]),圖中是一個例子. 可以看出,popen方法通過p.read()獲取終端輸出,而且popen需要關閉close().當執行成功時,close()不返回任何值,失敗時,close()返回系統返回值. 可見它獲取返回值的方式和os.system不同。
3
使用commands模塊,圖中是一組例子。根據你需要的不同,commands模塊有三個方法可供選擇。getstatusoutput, getoutput, getstatus。
Ⅸ python腳本怎麼執行linux系統命令
打開apache服務其實就一條,就是執行{type httpd}所得到的執行文件。
#!/usr/bin/python
#!coding=<utf-8>
import os
os.system("service httpd start")
#這樣就執行完了,os模塊還有其他可用方法,比如popen(),請參考標准模塊手冊。
Ⅹ python執行這樣一條windows系統命令怎麼不行
這種情況是使用的方法不正確導致的。
Python中執行系統命令常見的幾種方法如下:
1、os.system
例如:
>>> import os >>> os.system('ls') chk_err_log.py CmdTool.log install_log.txt install_zabbix.sh manage_deploy.sh MegaSAS.log
2、os.popen
例如:
>>> import os >>>tmp = os.popen('ls *.sh').readlines() >>>tmp ['install_zabbix.sh\n', 'manage_deploy.sh\n', 'mysql_setup.sh\n', 'python_manage_deploy.sh\n', 'setup.sh\n']
3、使用模塊subprocess
使用方法:
>>> import subprocess >>> subprocess.call (["cmd", "arg1", "arg2"],shell=True)
import subprocess p = subprocess.Popen('ls *.sh', shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT) print p.stdout.readlines() for line in p.stdout.readlines(): print line, retval = p.wait()
4、 使用模塊commands模塊
使用方法:
>>> import commands >>> commands.getoutput('ls *.sh') 'install_zabbix.sh\nmanage_deploy.sh\nmysql_setup.sh\npython_manage_deploy.sh\nsetup.sh' >>> commands.getstatusoutput('ls *.sh') (0, 'install_zabbix.sh\nmanage_deploy.sh\nmysql_setup.sh\npython_manage_deploy.sh\nsetup.sh')
注意:當執行命令的參數或者返回中包含了中文文字,那麼建議使用subprocess,如果使用os.popen則會出現錯誤。