GNU/Linux >> Belajar Linux >  >> Linux

Bagaimana cara mengulang direktori di Linux?

cd /tmp
find . -maxdepth 1 -mindepth 1 -type d -printf '%f\n'

Penjelasan singkat:

  • find menemukan file (sangat jelas)

  • . adalah direktori saat ini, yang setelah cd adalah /tmp (IMHO ini lebih fleksibel daripada memiliki /tmp langsung di find memerintah. Anda hanya memiliki satu tempat, cd , untuk mengubah, jika Anda ingin lebih banyak tindakan dilakukan di folder ini)

  • -maxdepth 1 dan -mindepth 1 pastikan bahwa find hanya melihat di direktori saat ini dan tidak menyertakan . sendiri dalam hasil

  • -type d hanya mencari direktori

  • -printf '%f\n hanya mencetak nama folder yang ditemukan (ditambah baris baru) untuk setiap klik.

Et voila!


Semua jawaban sejauh ini menggunakan find , jadi ini satu dengan cangkangnya saja. Tidak perlu alat eksternal dalam kasus Anda:

for dir in /tmp/*/     # list directories in the form "/tmp/dirname/"
do
    dir=${dir%*/}      # remove the trailing "/"
    echo "${dir##*/}"    # print everything after the final "/"
done

Linux
  1. Cara Menemukan File Di Linux Di Semua Direktori Secara Rekursif

  2. Cara Mengganti Nama Direktori di Linux

  3. Cara Menemukan IP Gateway Default di Linux

  1. Cara menggunakan FIND di Linux

  2. Cara Menemukan dan Menghapus Direktori dan File Kosong di Linux

  3. Cara membedakan direktori melalui ssh

  1. Cara Mencari dan Menghapus Direktori Secara Rekursif di Linux

  2. Cara menemukan File di Linux

  3. Bagaimana menemukan Direktori yang diperbarui hari terakhir di linux?