Di Linux, lebih disukai menggunakan bash, apa cara terbaik untuk mencapai tujuan di bawah ini?
Katakanlah saya memiliki serangkaian file bernomor
001.png, 002.png, 003.png
Apa cara terbaik untuk memindahkan / mengubah nama mereka menjadi dalam urutan terbalik?
Poin bonus: Saya memiliki serangkaian 1500 file, saya benar-benar ingin membalik urutan blok kedua sebanyak 40. Perhatikan bahwa huruf-huruf itu bukan bagian dari namanya. Saya menggunakannya untuk menunjukkan keunikan konten.
001a, 002b, ..., 040c <- leave as is
041a, 042b, ..., 080c <- reverse order of these files
081a, 082b, ..., 120c <- leave as is
121a, 122b, ..., 160a <- reverse order of these files
menjadi:
001a, 002b, ..., 040c
041c, 042b, ..., 080a
081a, 082b, ..., 120c
121c, 122b, ..., 160a
linux
bash
batch
batch-rename
pengguna1611172
sumber
sumber
images=(*.png)
, sesuatu sepertiwhile read ; do images=$REPLY; .... done
akan beroperasi pada "setiap saluran lain"). Pemeriksaan lebih dekat menunjukkan bahwa daftar file mungkin tidak ada dalam file teks, jadi daripada membangun file semata-mata untuk tujuan melewatkan baris, mungkin lebih baik untuk membangun daftar 1-40, 81-120, dll untuk spesifik ini kasus.Dengan asumsi file dinamai secara berurutan tanpa ada bagian yang hilang, dan tidak menggunakan apa pun selain angka sebelum ekstensi, ini adalah Bash murni (sejak 3.0).
Jalankan ini dari direktori gambar PNG di.
sumber