不知道是否有人遇到過這個問題,但我會爲疑難解答和/或替代方法提供建議。由Windows任務計劃程序運行python腳本的問題,它執行pscp
我有一個Windows 2008服務器上運行幾個計劃任務。其中一項任務是使用pscp登錄到Linux機箱,檢查新文件以及是否有新內容的python腳本,將它們複製到C:驅動器上的本地目錄中。我已經在關鍵點上對腳本進行了一些日誌記錄,我正在使用logging.basicConfig(level=DEBUG)
。
我使用變量command = 'pscp -pw xxxx [email protected]:/ c:\local_dir'
構建了該命令,然後使用subprocess.call(command)
執行該命令。
現在這裏是奇怪的部分。如果我從命令行手動運行腳本,它工作正常。新文件被下載和處理。但是,如果任務計劃程序運行腳本,則不會下載任何新文件。腳本在同一個用戶下運行,但是卻產生不同的結果。
根據腳本和linux框創建的日誌文件,該腳本成功登錄到linux框。但是,即使存在新文件,也不會下載任何文件。再次,當我通過命令行運行它時,會下載文件。
任何想法?建議,替代方法?
謝謝。
感謝這些答案。事實證明你們都是對的。任務計劃程序有兩種方式很奇怪:第一種;它不喜歡映射驅動器。它適用於UNC參考。第二;它喜歡一切的完整路徑參考。文件,命令,腳本中的語法,一切。事實上,使用這兩種技術是我如何解決我的問題。現在我唯一的問題是決定哪個答案點擊正確,因爲這兩個工作。 – user1070061