Изменение нескольких расширений файла с использованием одной строки команды

В качестве временного решения, пока выскочка не будет обновлена ​​до версии 1.3, где поддерживаются файлы .override , можно закомментировать раздел respawn . Это также можно сделать. быть автоматизированным, .eg как часть сценария rpm, используя следующие команды sed :

# to disable:
sed -i -e 's/^respawn/#respawn/' /etc/init/my_svc.conf

# to enable:
sed -i -e 's/#respawn/respawn/' /etc/init/my_svc.conf    
1
15.09.2018, 22:30
2 ответа

Если вы хотите удалить все расширения (все послепервойточки )из каждого имени файла выполните

$ for f in *
do
    mv -- "$f" "${f%%.*}.txt"
done

Конечно, если вы действительно хотите сделать это одной строкой, просто сверните приведенное выше до

$ for f in *; do mv -- "$f" "${f%%.*}.txt"; done
7
27.01.2020, 23:12

Вы можете сделать это с помощью GNU Parallel:

find... | parallel mv {} '{=s/\..*//=}'.txt
1
27.01.2020, 23:12

Теги

Похожие вопросы