Dropboxで同期しているSSDが調子悪くなって、アンマウント/マウントを繰り返していたら、「Hoge(xxx の競合コピー 2020-11-24).java」みたいなファイルがいくつも発生してしまった。
Android Studioで無視してくれないので、削除ツールを作った。
メモ帳を開いて、下記のコードをペースト、「remover.bat」とかの名前のつけて保存。
保存したbatファイルをダブルクリックして実行すれば、動く、はず。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
@powershell -NoProfile -ExecutionPolicy Unrestricted "&([ScriptBlock]::Create((cat -encoding utf8 \"%~f0\" | ? {$_.ReadCount -gt 2}) -join \"`n\"))" %* $key = " の競合コピー "; # 注 このbatファイル自体も削除の対象なので、batと指定すると、このファイルも削除されます。 Write-Output ("文字列 " + $key + " を含むファイルを探します。"); $List = Get-ChildItem -Recurse * | Where-Object { ! $_.PSIsContainer }; $DeleteList = @(); foreach($_ in $List){ if($_.Name.IndexOf($key) -gt -1){ Write-Output ($_.FullName); $DeleteList += $_; } } Write-Output ("文字列 " + $key + " を含むファイルは " + $DeleteList.Length + " 個見つかりました。"); if($DeleteList.Length -eq 0){ Read-Host "Enterキー を押下すると閉じます。"; exit } $ans =(Read-Host "本当に削除していいですか? y/n"); if($ans -eq "y"){ $Count = 0; foreach($_ in $DeleteList){ Write-Output ($_.FullName); $Count ++; Remove-Item $_.FullName; } Write-Output ($Count.ToString() + " 個のファイルを削除しました。"); } Read-Host "Enterキー を押下すると閉じます。"; #cmd /k |