對於在終端中說我做了cd Desktop
你應該知道它會將你移動到那個目錄下,但是我如何在python中執行該操作,但是使用Desktop的raw_input("")
來執行我的命令?如何從python執行os/shell命令
回答
下面的代碼讀取的raw_input使用你的命令,並使用使用os.system()
import os
if __name__ == '__main__':
while True:
exec_cmd = raw_input("enter your command:")
os.system(exec_cmd)
最好的問候, 亞龍執行它
當使用代碼時cd不會工作 –
請參閱下面的問題和解決辦法「cd」http://stackoverflow.com/questions/35843054/change-directory- in-terminal-using-python/35843532#35843532 – Yaron
當我打開文件並執行cd/home/pi/Desktop/asf1/dos時,什麼也沒有發生 –
也許你可以這樣做:
>>> import subprocess
>>> input = raw_input("")
>>> suprocess.call(input.split()) # for detail usage, search subprocess
瞭解詳情,你可以搜索subprocess
模塊
如'subprocess'文檔中所示,這會在'input =「ls -l」'的情況下引發錯誤。你需要用'space'字符來'分割'輸入字符串,以便給出'subprocess.call()'它可以使用的東西(一個列表)。 – skeletalbassman
@skeletalbassman,是的,謝謝。 –
使用'shlex.split' – warvariuc
去與你的具體的例子,你會做到以下幾點:
import os
if __name__ == "__main__":
directory = raw_input("Please enter absolute path: ")
old_dir = os.getcwd() #in case you need your old directory
os.chdir(directory)
我在我已經寫了一些目錄維護功能之前使用這種技術,它的工作原理。如果你想更普遍地運行shell命令,你可能會喜歡:
import subprocess
if __name__ == "__main__":
command_list = raw_input("").split(" ")
ret = subprocess(command_list)
#from here you can check ret if you need to
但是要小心這個方法。這裏的系統不知道它是否傳遞了一個有效的命令,所以它可能會失敗並錯過異常。更好的版本可能如下所示:
import subprocess
if __name__ == "__main__":
command_kb = {
"cd": True,
"ls": True
#etc etc
}
command_list = raw_input("").split(" ")
command = command_list[0]
if command in command_kb:
#do some stuff here to the input depending on the
#function being called
pass
else:
print "Command not supported"
return -1
ret = subprocess(command_list)
#from here you can check ret if you need to
此方法表示支持的命令列表。然後,您可以根據需要操作參數列表來驗證它是否是有效的命令。例如,您可以檢查您目錄cd
是否存在,如果不存在,則向用戶返回錯誤。或者你可以檢查路徑名是否有效,但只有當通過絕對路徑連接時。
- 1. 從Python執行命令行命令
- 2. 從命令行執行python腳本,Linux
- 3. python執行並行命令
- 4. Python命令行執行
- 5. 如何通過Python執行shell命令
- 6. 從NSIS執行命令行命令
- 7. 從Perl執行命令行命令?
- 8. 從命令行執行Django Shell命令
- 9. 從python程序執行cmd命令
- 10. 從python腳本執行linux shell命令
- 11. 從python代碼執行Unix命令
- 12. 從python執行DevCon CMD命令
- 13. 如何從命令行在iTerm窗口中執行命令?
- 14. 如何從C++程序執行命令行命令
- 15. 如何在python腳本中執行多個命令的命令
- 16. Python執行HTTP命令
- 17. Python執行powershell命令
- 18. 如何從Makefile執行SED命令
- 19. 如何從build.gradle執行git命令?
- 20. 如何執行PowerShell命令從CMD.EXE
- 21. 如何從c#執行cmd命令#
- 22. 從命令行執行Powershell
- 23. PHP如何執行命令
- 24. 如何從python中的另一個shell執行命令?
- 25. 如何從python腳本執行linux命令
- 26. 如何從Python執行VS2008命令並獲取其輸出?
- 27. 如何從Python執行多個bash命令?
- 28. 如何從python執行多個unix命令
- 29. 如何從python的命令提示符執行腳本
- 30. 如何從shell或windows內聯命令執行java jshell命令
您是否在問如何通過Python中的raw_input執行shell/cmd命令? –
查克洛根是正確的謝謝你知道理解我的問題 –
查克洛根我檢查出沒有raw_input的跡象,因爲我看到 –