Переименование нескольких файлов с помощью Shell Script - PullRequest
0 голосов
/ 29 августа 2011

У меня есть файлы с именами t1.txt, t2.tx t, t3.txt ... t4.txt, и мне нужен сценарий оболочки, чтобы переименовать его следующим образом:

файл один: M.m.1.1.1.201108290000.ready

файл два: M.m.1.1.1.201108290001.ready

и т. Д., Меняется порядковый номер в последних 4 цифрах.

Буду признателен, если кто-нибудь мне поможет :) 1015 *

С наилучшими пожеланиями

1 Ответ

3 голосов
/ 29 августа 2011

Это может быть то, что вам нужно:

cd /home/me/Desktop/files/renam/
n=201108290000
for file in *.txt; do
    echo $file
    prefix=M.m.1.1.1.
    file_name=M.m.1.1.1.$n.ready
    echo $file_name
    n=$(( $n+1 ))
    mv $file $file_name
done

Это близко к тому, что вы написали сами, вы просто пропустили некоторый синтаксис bash. Обратите внимание, что вы можете изменить начальное значение n, иначе для файлов, которые вы упомянули, t1.txt станет M.m.1.1.1.201108290000.ready. В зависимости от того, что вы используете, это может сбить с толку.

Я бы также посоветовал вам избегать использования имен программ и встроенных функций в качестве имен переменных, таких как seq в вашем случае.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...