Saya memiliki direktori yang berisi sejumlah besar file PDF, beberapa di antaranya berada di subdirektori (yang dapat memperpanjang beberapa lapisan). Saya ingin memindahkan semua file yang cocok *.pdf
ke folder keluaran tunggal bernama papers
.
Bagaimana saya bisa melakukan ini?
linux
command-line
blz
sumber
sumber
a/x.pdf
danb/x.pdf
?Jawaban:
Jika Anda menggunakan
bash
dalam versi terbaru, Anda bisa mendapat untung dariglobstar
opsi:sumber
Inilah tes yang saya lakukan
Perhatikan file "aaa bbb.pdf".
sumber
"{}"
untuk berurusan dengan nama file yang mengandung spasi?(mirip dengan jawaban lain tetapi saya lebih suka pipa / xargs / mv ... lebih intuitif untuk saya)
FYI, saya berhasil membuat skrip satu-baris di atas dengan sukses pada banyak direktori dan beberapa file pdf.
sumber
-print0
ke temuan Anda, dan-0
ke xargs.Untuk baris perintah Windows (cmd.exe), Anda dapat menggunakan:
sumber
Jika Anda hanya mencari satu direktori dalam, Anda bisa melakukan:
di mana
<destination>
singkatan dari beberapa direktori.mv
tidak akan secara otomatis membuat direktori untuk Anda.sumber