Saya memiliki semua musik saya di folder /media/kalenpw/MyBook/Music/ABunchOfOtherFoldersWithFilesInside
. Saya ingin menyalin semua mp3 /media/kalenpw/HDD/Music
jadi saya menggunakan:
cp -R /media/kalenpw/MyBook/Music/*.mp3 /media/kalenpw/HDD/Music
namun ini hanya menyalin mp3 di folder musik root dan tidak membuka subdirektori artis dan menyalin file-file itu.
Saya mendapat kesan -R
akan menyalin semua file secara rekursif. Bagaimana saya bisa mencapai tujuan tersebut?
-iname
daripada-name
seandainya file berakhir.MP3
.Anda telah secara spesifik menyebutkan file / direktori yang akan disalin menggunakan
*.mp3
mis. Nama file / direktori yang diakhiri.mp3
.Jadi file berakhiran
.mp3
di/media/kalenpw/MyBook/Music/
direktori dan sama, setiap direktori berakhir di.mp3
dalam/media/kalenpw/MyBook/Music/
akan disalin, rekursif. Jika tidak ada file / direktori yang cocok, tidak ada yang akan disalin.Sekarang untuk menyalin semua
.mp3
file dari/media/kalenpw/MyBook/Music/
recursivley ke direktori/media/kalenpw/HDD/Music/
:Menggunakan
bash
:Menggunakan
find
:sumber
Anda juga dapat menggunakan cpr :
Perhatikan bahwa tanpa
-p
cpr akan mempertahankan jalur direktori yang lengkap pada nama file yang disalin.-r
dapat digunakan (sebagai ganti-p
) untuk mempertahankan jalur di bawah '/ media.../Music/'.Juga
cpr
akan berhati-hati bahwa tidak ada file yang ditimpa, menambahkan nomor mulai dari '0001' untuk setiap nama file yang disalin.sumber
Misalkan Anda memiliki banyak
.docx
,.mp3
,.txt
dan.xlsx
file yang tersimpan dalam struktur direktori ini:... dan Anda ingin mengulang kembali ke semua direktori untuk menyalin semua
.mp3
file yang ditemukan/home/me/music/
tetapi Anda tidak ingin menyimpan pohon direktori tersebut di tujuan (mis. Anda ingin semua.mp3
file yang ditemukan disalin ke/home/me/music/
alih-alih disalin ke direktori masing-masing seperti/home/me/music/dir1/
,/home/me/music/dir1/dir11/
dan lain-lain).Dalam kasus seperti itu, di terminal shell (bash) pertama jalankan perintah ini untuk mengakses root pencarian file Anda:
... dan kemudian jalankan perintah ini:
Jika anda tidak ingin melestarikan pohon direktori sumber di tujuan, menjalankan perintah ini bukan (setelah menjalankan
cd /files
):Pada perintah di atas, pencarian adalah case-sensitive (yaitu pertandingan
.mp3
,.MP3
,.mP3
dan.Mp3
). Gunakan-name
alih-alih-iname
jika Anda ingin pencarian menjadi case-sensitive (misalnya menggunakan-name
untuk.mp3
string karakter akan cocok dengan file yang diakhiri dengan.mp3
tetapi tidak yang berakhir dengan.MP3
,.mP3
juga.Mp3
).sumber