這是我之前問題(link)的一種後續操作。批處理文件完成後,批處理文件在「任務計劃程序」下運行,並繼續運行
要進行測試我做了這個簡單的批處理文件,以確保任務計劃程序被正確執行批處理文件:
cd "C:\Users\user\Desktop"
echo. 2>test.txt
所以,桌面上創建test.txt
文件後,該批處理文件應該結束,但繼續運行:
有沒有一種方法,無論是在批處理文件或在任務的屬性設置,年底前確保CMD進程退出?
謝謝!
這是我之前問題(link)的一種後續操作。批處理文件完成後,批處理文件在「任務計劃程序」下運行,並繼續運行
要進行測試我做了這個簡單的批處理文件,以確保任務計劃程序被正確執行批處理文件:
cd "C:\Users\user\Desktop"
echo. 2>test.txt
所以,桌面上創建test.txt
文件後,該批處理文件應該結束,但繼續運行:
有沒有一種方法,無論是在批處理文件或在任務的屬性設置,年底前確保CMD進程退出?
謝謝!
我找到的解決方案是在批處理文件的最後添加這一行:
現在後TASKKILL /F /IM cmd.exe
批處理文件任務運行和完成,它不再是在所有正在運行的任務列表,狀態會返回到「準備好」狀態,而不是停留在「正在運行」狀態。
運行TASKKILL /F /IM cmd.exe
將終止所有cmd.exe進程,無論它是否是產生此批處理文件的進程。這可能不是理想的行爲。 :-)
從你最後一個問題來看,我猜你還在用cmd.exe /k
運行你的任務,這將使窗口保持無限期打開狀態。對於無人值守的任務,cmd.exe /c
是更好的選擇。當批處理文件結束時,該過程應該結束。
您可以添加「退出」到腳本的最後一行
cd "C:\Users\user\Desktop"
echo. 2>test.txt
exit
同樣在這裏在Windows 7 把所有批處理文件的目錄中誰運行任務的用戶的用戶特定的路徑
運行PROGRAMM = 「cmd.exe的」(無路徑)
你的演員,礦井,其中=「/C 」C:\用戶[用戶名] \任何\ your_batchfile.bat「 >> log.txt的「 「
」 >> log.txt的 「這樣我可以看到該批次的輸出...
在開始=」 C:\用戶[用戶名] \任何「
我還檢查了盒子
「最高privilges運行」所有的事情以後工作得很好:)
我遇到了相同問題。然而,當我讀到Trevor778在這篇文章中寫到的內容時,我感到非常愚蠢:
我有同樣的問題 - 任務工作但狀態一直顯示正在運行。一個簡單的事情就是點擊左側列中的任務計劃程序庫。點擊操作/刷新。普雷斯托。狀態更改爲就緒。這就是這一切,任務運行良好,只是狀態沒有更新。希望這可以幫助。
感謝您的提示!它看起來確實是在任務完成時狀態不會更新,而無需按刷新。 – 2017-04-06 08:41:31
謝謝你的投入,我將之納入未來的批處理文件(如有必要)。我最終編寫了一個備份程序來處理所有事情,而不是現有備份批處理文件的包裝。 – Anders 2013-02-04 02:04:25