Jawaban:
Pertama-tama perhatikan bahwa menghapus direktori kosong biasanya tidak diperlukan. Beberapa layanan atau aplikasi bahkan mungkin memerlukan direktori tertentu. Waspadai apa yang Anda lakukan.
Anda dapat membuat daftar folder kosong dengan find
, ketika dijalankan dari Terminal.app:
find . -type d -empty
Secara default, find
daftar file dan folder, tetapi di sini, -type d
membatasi ke direktori, dan -empty
opsi hanya menampilkan direktori kosong. Ini akan berulang semua folder turun dari direktori home Anda ( atau pendek, ). Untuk memperluas ini ke seluruh sistem file Anda, gunakan:/Users/your-username/
~
find / -type d -empty
Di sini, /
menandakan akar sistem file Mac OS X Anda. Anda tentu saja dapat menggunakan titik awal lainnya juga, misalnya disk eksternal Anda terpasang di bawah ;/Volumes/your-disk-name
find /Volumes/your-disk-name -type d -empty
Sekarang, jika Anda ingin menghapus find
output apa pun , cukup tambahkan -delete
, seperti:
find . -type d -empty -delete
Catatan: Ini tidak akan meminta konfirmasi . Ini akan menghapus semua direktori yang bisa, yaitu direktori tempat Anda memiliki izin untuk dihapus. Mereka tidak akan dipindahkan ke tempat sampah tetapi pergi selamanya. Jika Anda ingin ditanya sebelum menghapus, ubah perintah menjadi seperti ini:
find . -type d -empty -exec rm -ri '{}' \;
illegal option -- t
type
dan empty
sepertinya tidak bisa mengenali.
find
membutuhkan lintasan, jadi coba lagi dengan find . -type d
, bukan find -type d
(yang terakhir berfungsi untuk GNU find
).
find
cara yang sama seperti di atas), dan kemudian menggunakan perintah yang disarankan untuk menghapus direktori kosong yang tersisa.
Saya telah membuat program kecil dan gratis yang memecahkan masalah ini dengan lebih baik:
http://www.macupdate.com/app/mac/52551/find-empty-folders
Keuntungan dari program ini adalah ia juga menemukan folder yang tampaknya kosong tetapi berisi file ".DS_Store" yang tidak terlihat.
Dan itu juga memungkinkan Anda memindahkan barang yang ditemukan ke Sampah segera.
find ~/Documents -type f -name 'Icon?' -print -delete;
Untuk melanjutkan upaya ini:
Saya membuat skrip yang saya gunakan untuk membersihkan folder dokumen saya dari waktu ke waktu, karena saya sedang menuju OCD dan lelah karena kelebihan muatan APP & suka kesederhanaan.
Saya membuat ini dalam upaya untuk meningkatkan & memberikan solusi alternatif.
Terakhir, untuk File Ikon @ kenche, yang sepertinya tidak ada di mac saya karena saya belum mengubah ikon folder saya, tetapi Anda bisa di inspektur. Setelah menyeret gambar ke kiri atas itu akan membuat Icon^M
file pada direktori itu.
Untuk menemukannya juga Anda dapat menjalankan:
(Haruskah Anda menjadi paranoid jika menemukan false positive lalu gunakan: ctrl+ v ctrl+ malih-alih?)
find ~/Documents -type f -name 'Icon?' -print;
# and to remove
find ~/Documents -type f -name 'Icon?' -print -delete;
Silakan seperti @slhck yang dinyatakan di atas: Beberapa layanan atau aplikasi bahkan mungkin memerlukan direktori tertentu untuk ada. Ini juga berlaku untuk file DS_Store & Ikon, PLEASE Waspadai apa yang Anda lakukan. Juga Catatan: Skrip ini tidak akan meminta konfirmasi. Ini akan menghapus semua direktori yang ada. yaitu yang mana Anda memiliki izin untuk menghapus. Mereka tidak akan dipindahkan ke tempat sampah tetapi pergi selamanya.
#!/bin/bash
# =============================================================================
# MAC OSX HIGH SIERRA 10.13.4 (17E199)
# Terminal: Version: 2.8.2 64-Bit (Intel): Yes
# Terminal Location: /Applications/Utilities/Terminal.app
# =============================================================================
# Terminal CLEAN UP YOUR DOCUMENTS FOLDER.
# =============================================================================
# START WHAT IS BELIEVED TO BE EMPTY NOW.
# =============================================================================
echo 'Searching Documents for empty folders...'
find ~/Documents -type d -empty;
# =============================================================================
# SHOW & THEN REMOVE ALL MAC OS DS_Store FILES
# =============================================================================
echo 'Searching Documents for DS_Store files...'
find ~/Documents -type f -name ".DS_Store" -print;
echo 'Removing DS_Store files...'
find ~/Documents -type f -name ".DS_Store" -print -delete;
# =============================================================================
# SHOW & THEN REMOVE ALL MAC OS ZERO SIZED FILES
# =============================================================================
echo 'Searching Documents for ZERO file sized files...'
find ~/Documents -type f -empty;
echo 'Removing ZERO file sized files...'
find ~/Documents -type f -empty -delete;
# =============================================================================
# SHOW & THEN REMOVE Icon^M FILES
# USE THE ? MARK FOR EASE OF USE YOU CAN ALSO SUB 'CTRL + V & CTRL + M' FOR ^M
# =============================================================================
echo 'Searching Documents for Icon files...'
find ~/Documents -type f -name 'Icon?' -print;
echo 'Removing Icon files from Documents...'
find ~/Documents -type f -name 'Icon?' -print -delete;
# SEEMINGLY THE SAME AS
# find ~/Documents -type f -size 0 -print
# find ~/Documents -type f -size 0 -print -delete
# =============================================================================
# SHOWCASE NEW FOUND EMPTY FOLDERS
# =============================================================================
echo 'Showcasing new result of existing and new found empty folders...'
find ~/Documents -type d -empty;
echo 'Deleting result of empty folders...'
find ~/Documents -type d -empty -delete;
echo 'Showcasing the removal of said, 'empty folders'...'
find ~/Documents -type d -empty;
Akhir skrip.
Script dapat dilihat di sini di GitHub
Tentang ikon yang mewakili file di Mac Anda
Adakah cara untuk menghapus semua folder yang hanya berisi .DS_Store secara rekursif?
Temukan folder & subfolder yang hanya berisi ".DS_Store"
Cara menemukan semua file nol-byte dalam direktori termasuk subdirektori