GNU/Linux >> Belajar Linux >  >> Linux

Kecualikan Daftar Direktori Dari Unix Temukan Perintah?

Saya perlu membuat daftar file yang ada di direktori tetapi juga mengirimkan file yang berisi daftar direktori untuk dikecualikan.

Saya telah melihat saran di bawah ini, tetapi saya tidak beruntung dalam hal jenis flag:

find $dir_name $(printf "! -name %s " $(cat $exclude_file))

Apakah ada cara yang bisa saya lakukan atau saya perlu membuat seluruh daftar dan kemudian menyelesaikannya dengan menghapus yang sebagian cocok dengan yang ada di direktori pengecualian.

Jawaban yang Diterima:

Mengingat bahwa exclude_file . Anda berisi jalur, bukan nama, Anda harus menggunakan -path untuk mencocokkan entrinya. Untuk mengecualikan subdirektori direktori yang cocok, Anda juga perlu -prune mereka. Ini akan berhasil:

find . -type d \( $(printf -- "-path */%s -o " $(cat "$exclude_file")) -false \) -prune -o -print

Jika Anda hanya ingin melihat file, Anda hanya dapat mencetak file:

find . -type d \( $(printf -- "-path */%s -o " $(cat "$exclude_file")) -false \) -prune -o -type f -print

Linux
  1. Temukan versi WordPress dari baris perintah

  2. Bagaimana saya bisa mengecualikan direktori dari grep -R?

  3. Kecualikan daftar file dari find

  1. Bagaimana Cara Mengecualikan Perintah Dari Daftar Sejarah, Tetapi Menyimpannya Dalam Sejarah "langsung"?

  2. Setara dengan perintah Unix find di Windows

  3. Apakah ada perintah UNIX untuk mendaftar semua file yang baru saja dihapus dari suatu sistem

  1. Cara Mengecualikan Direktori Tertentu Dari Menyalin Di Linux

  2. Temukan N Kata Paling Sering Dalam File Dengan Daftar Kata Berhenti Dari Baris Perintah?

  3. Panduan untuk Perintah "Temukan" Linux