У мене папка із зображеннями:
pic001-2.png
pic002-2.png
pic003-2.png
Як перейменувати їх у наступне?
pic001.png
pic002.png
pic003.png
Я намагався, mv "pic*-2.png" "pic*.png"
але продовжую отримувати помилки.
У мене папка із зображеннями:
pic001-2.png
pic002-2.png
pic003-2.png
Як перейменувати їх у наступне?
pic001.png
pic002.png
pic003.png
Я намагався, mv "pic*-2.png" "pic*.png"
але продовжую отримувати помилки.
Відповіді:
Це видалить перше -2
знайдене у кожному імені файлу:
for f in pic*-2.png; do
mv "$f" "${f/-2/}"
done
Щоб перевірити це, просто додайте echo
до mv
рядка.
Вам потрібна відповідна назва "перейменувати" команду!
Спробуйте щось подібне:
rename 's/(pic\d+)-\d\.jpg/$1.jpg/' pic*.jpg
У якості першого аргументу він приймає регулярний вираз perl, тому ваші параметри відповідності шаблону та маніпуляції досить великі. Для отримання детальної інформації див. Сторінку перейменування (1).