
У меня есть несколько файлов в каталоге, заканчивающемся на 'StringtoReplace'. Как мне заменить эту часть имени файла для всех файлов в каталоге на новую строку 'ReplacedString'?
решение1
Это заменит первый экземпляр «StringtoReplace» на «ReplacedString»:
for f in *StringtoReplace; do [ -f "$f" ] && mv -- "$f" "${f/StringtoReplace/ReplacedString}"; done
Это заменитпоследнийэкземпляр «StringtoReplace» с «ReplacedString»:
for f in *StringtoReplace; do [ -f "$f" ] && mv -- "$f" "${f%StringtoReplace}ReplacedString"; done