bash, dosyalar, dosyaları yeniden adlandırma, konum değiştirme

Dec 22 2020

Nasıl yeniden adlandırılır

sluno-20201027-call-metroua-status.mp4
sluno-20201103-call-deriva.mp4
sluno-20201103-call-metroua-status.mp4
sluno-20201105-call-makrocz.mp4
sluno-20201105-call-metroua-testcall.mp4
sluno-20201105-call-sluno-ggtabak.mp4
sluno-20201110-call-makrocz.mp4
sluno-20201110-call-metroua-status.mp4
sluno-20201110-call-sluno-utccz.mp4

-e

sluno-call-metroua-status-20201027.mp4
sluno-call-deriva-20201103.mp4
sluno-call-metroua-status-20201103.mp4
sluno-call-makrocz-20201105.mp4
...

Tarihi / dizeyi 7-14dosya adının sonuna taşıyın .

Teşekkürler.

Yanıtlar

7 bac0n Dec 22 2020 at 22:04

mmv, karmaşık olmayan dosya yeniden adlandırma için iyi çalışır .

mmv '*-*-*-*.mp4' '#1-#3-#4-#2.mp4'

Ayrıca, özellikle aynı dizinde başka dosyalar olabileceği durumlarda, başka bir şeyin üzerindeki adı değiştirmediğinizden emin olmak için daha fazla referans noktasına sahip olmak yararlı olabilir.

mmv 'sluno-[0-9]*-call-[a-z]*.mp4' 'sluno-call-#3#4-#1#2.mp4'
             ^  ^        ^  ^
             1  2        3  4

sluno-20201027-call-metroua-status.mp4
      ^-------      ^-------------
      1   2         3       4

Ben olsaydım Yürütmem bunu yapmak için, mvve bashben bir for döngüsü ile ve gider bashBRE eşleştirme yerleşik.

for i in *.mp4; do \
    [[ $i =~ ^sluno-(.*)-call-(.*).mp4 ]] && \ mv -- "$i" "sluno-call-${BASH_REMATCH[2]}-${BASH_REMATCH[1]}.mp4"; \
done
4 pLumo Dec 22 2020 at 20:46

Kullanım rename:

rename -n 's/^(.*?)-(.*?)-(.*?)(\.mp4)$/$1-$3-$2$4/' *.mp4

-nÇıktıdan memnunsanız çıkarın .

Açıklama için ziyaret bu .

JohnP Dec 30 2020 at 01:47

Başka seçenek:

$ qmv {desen}

seçtiğiniz düzenleyiciye 2 sütun dosya adı bırakacaktır.

İstediğiniz dosya adlarına sahip olmak için sağdaki sütunu değiştirin.

Soldaki sütun, orijinal addır. Sağ grubun başlangıç ​​sütunu değiştirilemez, bu nedenle otomatik kaydırmanın önüne geçilebilir.

Her editöre sahip bir uzmanın elinde, özellikle vim sütunu ve görsel modlar için bu çılgınca hızlı olabilir.

Genel olarak yeniden adlandırmayı kullanıyorum, ancak karmaşık ihtiyaçlar için editörde tam isimleri görmek güzel.