У меня есть много файлов, которые имеют общий шаблон в их имени, который я хотел бы удалить. Например, у меня есть файлы «a_file000.tga» и «another_file000.tga». Я хотел бы сделать операцию над этими файлами, которая удалит шаблон «000» из их имен, в результате чего появятся новые имена «a_file.tga» и «another_file.tga».Как удалить конкретные символы из имен файлов с помощью BASH
ответ
Попробуйте это (это работает в обычном старом Bourne sh
а):
for i in *000.tga
do
mv "$i" "`echo $i | sed 's/000//'`"
done
Оба аргумента завернутые в кавычки, чтобы поддерживать пробелы в имена файлов.
Bash может сделать sed
-как замены:
for file in *; do mv "${file}" "${file/000/}"; done
прекрасно работает на OS X (10.6.8). Удобный и лаконичный. Благодарю. – jamesnotjim
Ницца, можете ли вы объяснить функцию "{"? – efrem
@efrem: фигурные скобки являются необязательным разделителем для имен переменных и необходимы для разложения параметров. Дополнительную информацию см. В [Bash Manual] (https://www.gnu.org/software/bash/manual/bashref.html#Shell-Parameter-Expansion). –
Не-Баш решение, так как я знаю две быстрых плакатов уже покрыл, что:
Там отличная короткую перл программа под названием rename
, который устанавливается по умолчанию в некоторых системах (другие менее полезные программы переименования) , Это позволяет использовать PERL регулярное выражение для переименования, например:
rename 's/000//' *000*.tga
#!/bin/bash
ls | while read name; do
echo mv $name ${name/$1//}
done
- 1. удалить некоторые конкретные символы из набора файлов
- 2. Как удалить повторяющиеся конкретные символы
- 3. Как удалить одиночные кавычки из имен файлов
- 4. Как удалить дефис из имен файлов в Bash
- 5. Как удалить символы из сценария bash?
- 6. Bash удаляет символы подчеркивания из моих имен файлов?
- 7. Как удалить экранированные символы в именах файлов?
- 8. Удалить символы из имен серверов
- 9. Как извлечь первые символы из имен файлов?
- 10. Как удалить специальные символы из txt-файлов с помощью Python
- 11. Как удалить конечные пробелы из расширений файлов с помощью bash?
- 12. Bash команды, чтобы удалить начальные нули из всех имен файлов
- 13. Как удалить лишние символы в именах файлов с помощью awk
- 14. Как удалить префикс из имен файлов с цифровым префиксом цифр
- 15. Как удалить пустое пространство из имен файлов
- 16. Удалить символы в файле (bash).
- 17. Bash & Sql - Удалить specialChar из нескольких файлов
- 18. Powershell Удалить специальные символы из файлов
- 19. Строка из имен файлов - Как удалить расширение?
- 20. Bash: rm с массивом имен файлов
- 21. Удалить форма шаблон имен файлов
- 22. Как удалить пробелы из имен файлов (навалом)
- 23. удалить первые символы из нескольких имен файлов с помощью файла bat - что есть ~% X%,?
- 24. Чтение имен файлов из каталога в Bash
- 25. Удалить первую букву из нескольких имен файлов
- 26. удалить символы из имени файла в bash
- 27. Заменить или удалить определенные символы из имен файлов всех файлов в папке
- 28. удалить определенные символы из объектных файлов
- 29. Bash: проверить наличие имен файлов
- 30. Удалить все конкретные символы в конце строки
+1 для большинства портативных решений (и потому, что я слишком низко на upvotes, чтобы сохранить upvoting _all_ хорошие ответы). –