2015-07-16 2 views
2

У меня есть куча файлов (несколько тысяч) под названием:Linux переименовать несколько файлов с помощью переименования

output.temp.1.csv output.temp.2.csv output.temp.3.csv т.д.

Я хотел бы, чтобы они все переименовывать но имеющие .temp удалены

output.1.csv output.2.csv output.3.csv и т.д. .

Я думаю rename это то, что мне нужно, но не знаете, как идти о делать это

Я пробовал:

rename 'output.temp' 'output', output.temp.*.csv

Но это не сработало ...

Любые советы о том, как это изменить?

Спасибо ...

+0

читать о mmv (многократное перемещение). – Jens

ответ

4

Вы можете использовать:

rename 's/output\.temp/output/' output.temp.*.csv 

Это будет переименовать 3 файлов:

output.1.csv 
output.2.csv 
output.3.csv 
0

Вот еще одно решение для переименования всех файлов:

ls -ltrh | grep -i output | awk '{print $9}' | awk -F\. '{print "mv",$0, $1"."$3"."$4}' | sh 
0

Идти с anbhava's ans WER, если все ваши файлы находятся не в том же каталоге, вы можете использовать

find path/to/dir/ -name 'output.temp.*.csv' -exec rename 's/output\.temp/output/' {} +

Чтобы переименовать все файлы в path/to/dir и любой из его подкаталогов.

Смежные вопросы