Ini tergantung pada shell yang Anda inginkan.
Jika Anda menggunakan cmd shell pada Windows maka yang berikut ini akan berfungsi:
FOR /F "tokens=*" %%G IN ('DIR /B /AD /S bin') DO RMDIR /S /Q "%%G"
FOR /F "tokens=*" %%G IN ('DIR /B /AD /S obj') DO RMDIR /S /Q "%%G"
Jika Anda menggunakan shell tipe bash atau zsh (seperti git bash atau babun di Windows atau kebanyakan shell Linux / OS X) maka ini adalah cara yang jauh lebih baik, lebih ringkas untuk melakukan apa yang Anda inginkan:
find . -iname "bin" | xargs rm -rf
find . -iname "obj" | xargs rm -rf
dan ini dapat dikurangi menjadi satu baris dengan ATAU:
find . -iname "bin" -o -iname "obj" | xargs rm -rf
Perhatikan bahwa jika direktori nama file Anda berisi spasi atau tanda kutip, find akan mengirim entri tersebut apa adanya, xargs mana yang dapat dibagi menjadi beberapa entri. Jika shell Anda mendukungnya, -print0
dan -0
akan mengatasi kekurangan ini, maka contoh di atas menjadi:
find . -iname "bin" -print0 | xargs -0 rm -rf
find . -iname "obj" -print0 | xargs -0 rm -rf
dan:
find . -iname "bin" -o -iname "obj" -print0 | xargs -0 rm -rf
Jika Anda menggunakan Powershell maka Anda dapat menggunakan ini:
Get-ChildItem .\ -include bin,obj -Recurse | foreach ($_) { remove-item $_.fullname -Force -Recurse }
seperti yang terlihat pada jawaban Robert H di bawah ini - pastikan Anda memberinya pujian untuk jawaban PowerShell daripada saya jika Anda memilih untuk memilih-up apa saja :)
Tentu saja akan bijaksana untuk menjalankan perintah apa pun yang Anda pilih di tempat yang aman terlebih dahulu untuk mengujinya!