GNU/Linux >> Belajar Linux >  >> Linux

Bagaimana saya bisa menyalin semua file pdf secara rekursif dalam direktori (dan itu subdirektori) ke dalam satu direktori keluaran?

  find /bunchopdfs -name "*.pdf" -exec mv {} /papers \;    

Inilah tes yang saya lakukan

$ ls -R
.:
a  aaa bbb.pdf  pdfs

./a:
foo.pdf

./pdfs:

Perhatikan file "aaa bbb.pdf".

$ find . -name "*pdf" -exec mv {} pdfs \;
$ ls -R
.:
a  pdfs

./a:

./pdfs:
aaa bbb.pdf  foo.pdf

Jika Anda menggunakan bash dalam versi terbaru, Anda bisa mendapatkan keuntungan dari globstar opsi:

shopt -s globstar
mv **/*.pdf papers/

find -print0 /directory/with/pdfs -iname "*.pdf" | xargs -0 mv -t /papers

(mirip dengan jawaban lain tapi saya lebih suka pipa/xargs/mv ... lebih intuitif untuk saya)

FYI, saya berhasil membuat skrip satu baris di atas pada banyak direktori dan banyak file pdf.


Linux
  1. Shell Script:Menyortir File Ke Direktori Dan Subdirektori?

  2. Cara Menemukan Semua File dengan Ukuran File Nol (0) Bytes di Direktori Secara Rekursif

  3. Cara mendaftar semua file dan direktori secara rekursif

  1. Cara memindahkan semua file termasuk file tersembunyi ke direktori induk melalui *

  2. Bagaimana saya bisa menyalin file secara rekursif dengan ekstensi file, mempertahankan struktur direktori?

  3. Bagaimana cara menyalin file dan subdirektori tersembunyi (dimulai dengan titik) di linux?

  1. Cara Menemukan Jumlah File dalam Direktori dan Subdirektori

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

  3. Bagaimana saya bisa secara rekursif menghapus semua file dan direktori kosong di Linux?