Beranda » bagaimana » Shell Geek Ganti Nama Banyak File Sekaligus

    Shell Geek Ganti Nama Banyak File Sekaligus

    Katakanlah Anda memiliki direktori dengan ratusan file dengan nama file yang salah, dan Anda ingin mengganti setiap nama file yang mengandung uji dengan melecut. (ini adalah contoh buat-buat). Kita dapat dengan mudah melakukan ini dengan perintah "for" di bash, dikombinasikan dengan sedikit kebaikan bash. Hari ini kita akan belajar bagaimana cara mengganti teks dalam variabel dalam for for.

    Perintah "untuk" bekerja seperti ini:

    untuk var in; lakukan $ var; selesai

    Anda bisa mengganti dengan pola kecocokan file apa pun, seperti * atau * .txt, dan Anda dapat menggantinya dengan perintah linux. Perintah akan dijalankan secara berurutan pada setiap file yang cocok dengan pola kecocokan file.

    Di sinilah penanganan variabel bash membuatnya lebih menarik. Alih-alih hanya melakukan sesuatu seperti "mv $ var", kita dapat mengganti teks dalam nama file menggunakan sintaks ini:

    $ var / originaltext / replacetext

    Jadi sekarang, jika kita menjalankan perintah ini di direktori kita:

    untuk f in *; lakukan mv $ f $ f / test / prod; selesai

    Untuk setiap file yang dicocokkan dengan *, bash akan menjalankan perintah yang mirip dengan ini:

    mv test.config prod.config

    Saya telah menemukan bahwa pengetahuan tentang shell sangat berharga ketika mengelola server atau hanya untuk mengelola koleksi file Anda, dan telah menyelamatkan saya berjam-jam dari apa yang seharusnya menjadi pekerjaan manual..

    Dan ya, saya menyadari ada sejumlah alat yang dapat melakukan penggantian nama beberapa file.