您好,登錄后才能下訂單哦!
了解python3 os實現多個程序運行的方法?這個問題可能是我們日常學習或工作經常見到的。希望通過這個問題能讓你收獲頗深。下面是小編給大家帶來的參考內容,讓我們一起來看看吧!
system函數可以將字符串轉化成命令在服務器上運行;其原理是每一條system函數執行時,其會創建一個子進程在系統上執行命令行,子進程的執行結果無法影響主進程;
上述原理會導致當需要執行多條命令行的時候可能得不到預期的結果;
import os os.system('cd /usr/local') os.mkdir('aaa.txt)
上述程序運行后會發現txt文件并沒有創建在/usr/local文件夾下,而是在當前的目錄下;
使用system執行多條命令
為了保證system執行多條命令可以成功,多條命令需要在同一個子進程中運行;
import os os.system('cd /usr/local && mkdir aaa.txt') # 或者 os.system('cd /usr/local ; mkdir aaa.txt')
基于上述使用的擴展使用:
模擬環境: 在服務器上啟動守護進程,直接啟動也會有異常退出,畢竟守護進程也是有重啟次數的, 這個時候就可以, 單獨創建一個啟動文件,用啟動文件啟動 程序。 再用守護進程啟動這個 啟動文件,做個異常處理,可以保證穩定啟動
import os,time def start(): try os.system('cd /usr/local && scrapy crawl yourSpiderName') # 或者 os.system('cd /usr/local ; scrapy crawl yourSpiderName') except Exception as e: print('MyErrorAtStart: %s' % e) time.sleep(10) start() if __name__ == '__main__': start()
感謝各位的閱讀!看完上述內容,你們對python3 os實現多個程序運行的方法大概了解了嗎?希望文章內容對大家有所幫助。如果想了解更多相關文章內容,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。