GNU/Linux >> Belajar Linux >  >> Linux

Perintah untuk membuat daftar semua file kecuali . (titik) dan .. (titik titik)

Mengenai dokumentasi ls(1) (man ls ):

-A, --hampir-semua tidak mencantumkan implied . dan ..

yang Anda butuhkan (tanpa argumen tambahan seperti .* ):

ls -A

atau lebih baik lagi:

/bin/ls -A

Saya memiliki situasi di mana saya ingin menghapus serangkaian direktori titik. Di server saya, kami menandai direktori untuk dihapus dengan menambahkan titik dan pola teks tertentu lainnya (stempel waktu) untuk penghapusan otomatis. Terkadang saya perlu melakukannya secara manual.

Seperti yang saya komentari pada balasan Basile Starynkevitch, ketika Anda menggunakan pola globbing seperti yang ada di bawah -A sakelar kehilangan fungsinya dan berfungsi seperti -a:

 [email protected]:~/scripts$ ls -1dA .*
.
..
.comparepp.sh.swp

Ini pasti akan memberikan kesalahan jika saya mencoba menghapus file sebagai pengguna, tetapi saya hanya tidak ingin memikirkan apa yang bisa terjadi sebagai root (!)

Pendekatan saya dalam hal ini adalah:

for dir in $(ls -1ad .* | tail -n +3) ; do rm -rfv $dir  ; done

Saya mengeluarkan 2 baris pertama yang berisi titik-titik seperti yang Anda lihat. Untuk menyesuaikan jawaban atas pertanyaan yang diajukan, ini akan berhasil:

ls -d1A .* | tail -n +3

$ ls -lA

berfungsi paling baik untuk kebutuhan saya.

Untuk kenyamanan, saya sarankan untuk mendefinisikan alias di dalam .bashrc-file sebagai berikut:

alias ll='ls -lA'

Linux
  1. Menampilkan daftar semua pekerjaan 'at' dan perintahnya masing-masing

  2. Loop Melalui Folder Dan Daftar File?

  3. Perintah Linux ls - Daftar File

  1. Perintah Linux untuk mencantumkan semua perintah dan alias yang tersedia

  2. Cara mendaftar semua file di jaringan berbagi Windows SMB

  3. Cara memindahkan semua file dan folder melalui perintah mv

  1. Gunakan Temukan Untuk Menemukan Direktori Tertentu Dan Hapus Semua File Di dalamnya Kecuali Satu Direktori?

  2. nm :Perintah untuk membuat daftar simbol dalam file objek.

  3. Baris perintah:cari dan ganti di semua nama file yang cocok dengan grep