Bagaimana cara menghapus semua file .DS_STORE dari direktori pada Windows Machine secara rekursif?

0

Saya mengekstraksi .zipfile yang dikompres pada Mac dan menemukan bahwa kompresi termasuk semua file .DS_STOREmeta-direktori (saya pikir digunakan untuk mempercepat pencarian sorotan, tetapi selain itu intinya?).

Apakah ada satu-liner yang dapat saya jalankan dari Windows PowerShell atau skrip python sederhana untuk membersihkan folder ini dengan secara rekursif menghapus file-file ini?

Saya mendapatkan kesalahan: FIND: Parameter format not correctsaat menggunakan:

find . -name '*.DS_Store' -type f -delete
tarabyte
sumber
Cara termudah adalah dengan mencari file di Windows Explorer (ctrl-f), sorot mereka, dan kemudian hapus.
dangph

Jawaban:

2

Di PowerShell lakukan ini:

cd MyFolder

Get-ChildItem -recurse -filter .DS_STORE | Remove-Item -WhatIf

Saat Anda menentukan -WhatIf, maka PowerShell tidak akan membuat perubahan. Alih-alih itu akan memberi tahu Anda apa yang akan dilakukan. Ketika Anda puas dengan apa yang akan dilakukan, maka Anda dapat menghapus -WhatIf. (Selalu bermanfaat untuk berhati-hati ketika melakukan penghapusan rekursif. Anda tidak ingin menghapus hal-hal yang salah.)

dangph
sumber
Hanya menghapus .DS_STORE pertama, bukan yang lain di subdirektori
tarabyte
@tarabyte, maaf, jawab diperbarui.
dangph
1
Anda mungkin juga perlu menindaklanjutinya dengan gci -recurse -filter "._*" | del -whatifmenghapus sampah HFS.
Nick T
0

Bahwa findsintaks Anda gunakan dalam contoh Anda tampaknya saya untuk menjadi lebih tepat untuk Mac OS X atau setup Linux / Unix dari setup Windows. Sebagai gantinya, mungkin gunakan delperintah seperti ini di Windows seperti yang dijelaskan di sini :

del /s /q /f /a:h .DS_STORE
JakeGould
sumber
Saya sudah mencobanya juga dan mendapatkan kesalahan: Remove-Item: A positional parameter cannot be found that accepts argument '/q'dari direktori yang menarik dan menggunakan Windows PowerShell.
tarabyte