多くの Selenium テストを実行すると、Firefox の場合は 'anonymous-web-driver' プロファイル、chrome の場合は 'scoped-dirs' プロファイルで一時フォルダーがいっぱいになります。
これに対処するために、次のバッチスクリプトコードを思いつきました
@echo off
cd %temp%
for /d %%D in (*) do rd /s /q "%%D"
del /f /q *
私はそれに次の問題があります
1) ジョブは正常に実行されますが、バッチ スクリプトがネットワーク ドライブで実行されると、現在のフォルダー内のすべてのファイルが削除さcd %temp%
れます。これは、一時フォルダーがないため、一時フォルダーに移動しないためです。
とにかく、現在のディレクトリが一時的な場合にのみ3行目と4行目が実行されるようにする方法はありますか? スクリプトはネットワーク ドライブに保存されているため、誤って実行された場合でも、意図しない削除が発生しないようにしたいと考えています。
2) 一部のフォルダーは temp で削除できないため、これらのフォルダーを削除できなかったというメッセージが表示され、cmd ウィンドウがハングします。実行するテストの数と、コマンドウィンドウを開く各テストはかなり醜いです。
私は次のことを試しましたRuntime.getRuntime().exec("taskkill /f /im cmd.exe");
が、すべての cmd プロセスを強制終了するという次の事実を除いて、正常に動作します。いくつかの作業を行う他の cmd プロセスがあります。ランタイム exec 呼び出しによって開かれた cmd ウィンドウのみを閉じる方法はありますか?