Слишком легкий, если Вы не хотите обширное программирование,
Предположим, что Вы смешиваетесь от log1
и log2
, получающийся в log
:
Контролируйте log1 в фоне и добавьте изменения в журнале tail -f log1 >> log &
Запустите другой процесс, контролирующий на log2 tail -f log2 >> log &
Для дачи показаний попробовать
echo ok1 >> log1; echo ok2 >> log2
Теперь, если Вы проверяете log
, Вы доберетесь
ok1
ok2
Он заменяет 4-й и 12-й символы на "25032014".[112228].
Это должно сработать. Обратите внимание - у меня нет привычки передавать массовые mv команды - как написано, это просто эхо. Вы должны разобраться с этим, прежде чем это сработает. [112230]
Простой собственный способ сделать это без цикла, с обходом каталогов :
find -type f | xargs -I {} mv {} {}.txt
Он переименует каждый файл на месте.
И ниже рабочий пример с распараллеливанием :
find -name "file*.p" | parallel 'f="{}" ; mv -- {} ${f:0:4}2503${f:8}'
это действительно ответ @Eric сверху, но это элегантный ответ, поэтому я репостю его как правильный ответ, чтобы привлечь к нему больше внимания.
for f in *Huge*; do mv "$f" "${f/Huge/Monstrous}"; done