Я пытаюсь написать команду bash, которая переименует все файлы в текущем каталоге, опуская последние 3 символа. Я не уверен, возможно ли, поэтому я спрашиваю здесь.Переименовать все файлы в каталоге, опуская последние 3 символа
У меня есть много файлов с именами, как это: 720-1458907789605.ts
Мне нужно переименовать все из них, опустив последние 3 символов, чтобы получить от 720-1458907789605.ts
--->720-1458907789.ts
для всех файлов в текущем каталоге.
Возможно ли использование команд bash? Я новичок в сценариях bash.
Спасибо!
У меня есть Баш скрипт так: место = «/ дом/VOD/canal3» кд $ location && найти. -maxdepth 1 -mmin +1 -type f -printf '% p \ 0% TF \ 0' | , в то время как IFS = read -rd '' file && read -d '' date; do mkdir -vp "$ date" && mv "$ file" "$ date" done – Chris
он в основном создает папку, называет ее текущей датой и затем перемещает все файлы к ней. Мне нужно, прежде чем переходить или после этого переименовать файл, пропустив последние 3 символа. Как реализовать свое предложение в этом скрипте? – Chris
Просто измените команду 'mv' на это:' mv '$ file "" $ date/$ {file% ???. Ts} .ts ". – gluk47