Android

Bagaimana untuk menamakan semula fail dan direktori di linux

Merubah Nama Folder dan File Melalui Terminal Linux

Merubah Nama Folder dan File Melalui Terminal Linux

Isi kandungan:

Anonim

Menamakan semula fail dan direktori adalah salah satu tugas yang paling asas yang sering anda perlukan untuk melaksanakan pada sistem Linux.

Menamakan semula satu fail adalah mudah, tetapi menamakan semula berbilang fail sekaligus boleh menjadi satu cabaran, terutama bagi pengguna yang baru untuk Linux. Anda boleh menamakan semula fail menggunakan pengurus fail GUI atau melalui terminal baris arahan.

Dalam tutorial ini, kami akan menunjukkan kepada anda cara menggunakan mv dan rename arahan untuk menamakan semula fail dan direktori.

Menamakan semula fail dengan arahan mv

Perintah mv (pendek dari bergerak) digunakan untuk menamakan semula atau memindahkan fail dari satu lokasi ke lokasi lain. Sintaks untuk arahan mv adalah seperti berikut:

mv source destination

source boleh menjadi satu atau lebih file atau direktori dan destination dapat menjadi satu file atau direktori.

  • Jika anda menentukan berbilang fail sebagai source , destination mestilah direktori. Dalam kes ini, fail source dipindahkan ke direktori sasaran.Jika anda menentukan satu fail sebagai source , dan sasaran destination ialah direktori yang sedia ada maka fail itu akan dipindahkan ke direktori yang ditentukan.Untuk menamakan semula fail yang anda perlukan untuk menentukan fail tunggal sebagai source , dan fail tunggal sebagai sasaran destination .

Contohnya, untuk menamakan semula fail file1.txt sebagai file2.txt anda jalankan:

mv file1.txt file2.txt

Menamakan semula beberapa fail dengan arahan mv

Perintah mv boleh menamakan semula satu fail pada satu masa tetapi ia boleh digunakan bersama dengan perintah lain seperti find atau dalam bash untuk atau semasa gelung untuk menamakan semula berbilang fail.

Contoh berikut menunjukkan cara menggunakan Bash untuk gelung untuk menamakan semula semua fail .html dalam direktori semasa dengan menukar lanjutan .html ke .php .

for f in *.html; do mv -- "$f" "${f%.html}.php" done

Mari kita analisa baris kod demi baris:

  • Baris pertama mencipta gelung dan meleret melalui senarai semua fail yang bersudut dengan .html . Baris kedua terpakai untuk setiap item senarai dan memindahkan fail ke yang baru menggantikan .html dengan .php . Bahagian ${file%.html} menggunakan pengembangan parameter shell untuk mengalih keluar bahagian .html dari filename.done menandakan akhir segmen gelung.

Kita juga boleh menggunakan arahan mv dalam kombinasi dengan find untuk mencapai sama seperti di atas.

find. -depth -name "*.html" -exec sh -c 'f="{}"; mv -- "$f" "${f%.html}.php"' ;

Perintah mencari sedang melewati semua fail yang berakhir dengan .html dalam direktori semasa ke arahan mv satu demi satu menggunakan suis -exec . The string {} adalah nama fail yang sedang diproses.

Seperti yang anda dapat lihat dari contoh di atas, menamakan semula berbilang fail menggunakan arahan mv bukanlah tugas yang mudah kerana ia memerlukan pengetahuan yang baik tentang skrip Bash.

Menamakan semula fail dengan menamakan semula Perintah

Perintah rename digunakan untuk menamakan semula beberapa fail. Perintah ini lebih maju daripada mv kerana ia memerlukan pengetahuan asas tentang ungkapan biasa.

Terdapat dua versi arahan rename dengan sintaks yang berbeza. Dalam tutorial ini, kami akan menggunakan versi perl arahan rename . Jika anda tidak mempunyai versi ini dipasang pada sistem anda, anda boleh dengan mudah memasangnya menggunakan pengurus pakej pengedaran anda.

  • Pasang nama semula pada Ubuntu dan Debian

    sudo apt install rename

    Pasang nama semula pada CentOS dan Fedora

    sudo yum install prename

    Pasang nama semula pada Arch Linux

    yay perl-rename ## or yaourt -S perl-rename

Sintaks untuk arahan rename adalah seperti berikut:

rename perlexpr files

Perintah rename akan menamakan semula semua files mengikut perlexpr biasa perlexpr ditentukan. Anda boleh mengenai ekspresi biasa perl di sini.

Sebagai contoh, arahan berikut akan mengubah semua fail dengan pelanjutan .html ke .php :

rename 's/.html/.php/' *.html

Anda boleh menggunakan hujah -n untuk mencetak nama fail yang akan dinamakan semula, tanpa menamakan semula.

rename -n 's/.html/.php/' *.html

Output akan kelihatan seperti ini:

rename(file-90.html, file-90.php) rename(file-91.html, file-91.php) rename(file-92.html, file-92.php) rename(file-93.html, file-93.php) rename(file-94.html, file-94.php)

Secara lalai, arahan penamaan semula tidak akan menggantikan fail sedia ada. Lulus argumen -f untuk membolehkan fail sedia ada ditulis terlebih dahulu.

rename -f 's/.html/.php/' *.html

Berikut ialah beberapa contoh yang lebih biasa tentang cara menggunakan arahan menamakan semula:

  • Ganti ruang dalam nama fail dengan garis bawah

    rename 'y/ /_/' *

    Tukar nama fail ke huruf kecil

    rename 'y/AZ/az/' *

    Tukar nama fail ke huruf besar

    rename 'y/az/AZ/' *

Kesimpulannya

Sekarang anda harus mempunyai pemahaman yang baik tentang cara menggunakan mv dan rename arahan untuk menamakan semula fail. Sudah tentu, terdapat arahan lain untuk menamakan semula fail di Linux seperti mmv . Pengguna Linux baru yang diintimidasi oleh baris arahan boleh menggunakan alat renaming kumpulan GUI seperti Métamorphose.

menamakan semula terminal mv