https://serverfault.com/questions/70939/how-to-replace-a-text-string-in-multiple-files-in-linux
https://serverfault.com/questions/228733/how-to-rename-multiple-files-by-replacing-word-in-file-name
https://serverfault.com/questions/212153/replace-string-in-files-with-certain-file-extension
https://serverfault.com/questions/33158/searching-a-number-of-files-for-a-string-in-linux
Эти упомянутые статьи все ответили на мой вопрос. Однако ни один из них не работает для меня. Я подозреваю, что это потому, что строка, которую я пытаюсь заменить, содержит #. Есть ли особый способ решения этой проблемы?
У меня есть файл изображения, который заменил é на # U00a9 во время миграции сайта. Это выглядит так:
Lucky-#U00a9NBC-80x60.jpg
Lucky-#U00a9NBC-125x125.jpg
Lucky-#U00a9NBC-150x150.jpg
Lucky-#U00a9NBC-250x250.jpg
Lucky-#U00a9NBC-282x232.jpg
Lucky-#U00a9NBC-300x150.jpg
Lucky-#U00a9NBC-300x200.jpg
Lucky-#U00a9NBC-300x250.jpg
Lucky-#U00a9NBC-360x240.jpg
Lucky-#U00a9NBC-400x250.jpg
Lucky-#U00a9NBC-430x270.jpg
Lucky-#U00a9NBC-480x240.jpg
Lucky-#U00a9NBC-600x240.jpg
Lucky-#U00a9NBC-600x250.jpg
Lucky-#U00a9NBC.jpg
и я хочу изменить это на что-то вроде этого:
Lucky-safeNBC-80x60.jpg
Lucky-safeNBC-125x125.jpg
Lucky-safeNBC-150x150.jpg
Lucky-safeNBC-250x250.jpg
Lucky-safeNBC-282x232.jpg
Lucky-safeNBC-300x150.jpg
Lucky-safeNBC-300x200.jpg
Lucky-safeNBC-300x250.jpg
Lucky-safeNBC-360x240.jpg
Lucky-safeNBC-400x250.jpg
Lucky-safeNBC-430x270.jpg
Lucky-safeNBC-480x240.jpg
Lucky-safeNBC-600x240.jpg
Lucky-safeNBC-600x250.jpg
Lucky-safeNBC.jpg
ОБНОВИТЬ:
Все эти примеры начинаются с "LU00a9ucky", но здесь много изображений с разными именами. Я просто нацеливаюсь на часть строки "# U00a9", чтобы заменить на "safe".
rename -n 's/#U00a9/safe/' *.jpg
и команда была принята, но никаких изменений не произошло.
-n
это no act
вариант. Что позволяет увидеть, работает ли оно до того, как вы его на самом деле используете. Правильно ли отображались выходные данные на экране?
rename
команду. Я подозреваю, что ваше переименование будет так же просто, какrename -n 's/#/safeNBC/' *.jpg
.