Apakah ada perintah MS-DOS yang memungkinkan saya untuk menghapus semua file kecuali satu?
Pertimbangkan sebagai contoh file-file berikut:
a.001
a.002
a.003
a.exe
a.c
Apakah ada perintah untuk menghapus semua file kecuali a.c
?
Anda dapat menggunakan for
dan if
memerintahkan untuk melakukan ini:
for %i in (*) do if not "%~i" == a.c del "%~i"
Ini melewati direktori saat ini, dan membandingkan setiap nama file dengan ac. Jika tidak cocok, file dihapus.
for
secara teratur, Anda membuat semua jenis skenario gila untuk itu. :)del "%i"
IF
pernyataan tidak peka huruf besar-kecil, ubah keIF /I
.Anda dapat mengatur file untuk dibaca hanya sebelum menghapus semuanya
sumber
Tidak, tidak ada. Saya akan membuat direktori, menyalin file penting ke dalamnya, hapus . , dan pindahkan file kembali. Kemudian hapus file temp.
sumber
sumber
%f
bisa ada spasi di nama file.sumber
%app_path%
dan%file%
merupakan akar dari pohon untuk dilintasi, dan file untuk menghindari penghapusan, masing-masing. Apa itu^
, dan mengapa kita melewatkan empat token per file keDel
perintah?Untuk kecepatan, saya menggunakan delen :
TCC / LE juga memiliki
del
perintahyang lebih kuat:sumber
del /[!a.c] *
yeldsInvalid switch - "[!a.c]".