Записать имя файла перед шаблоном внутри этого файла

Если вы хотите навсегда отключить eth0 в вашей системе, я предлагаю вам отредактировать интерфейсы конфигурации сети:

sudo vi /etc/network/interfaces

Затем добавьте строку:

iface eth0 inet manual

После того, как вы изменили файл, вы можете перезапустить сетевой менеджер, вызвав команда:

sudo service network-manager restart

Конечно, мод обратимый.

Если вы хотите повозиться с метриками интерфейса, чтобы назначить приоритет интерфейсу над другим, я предлагаю вам попробовать ifmetric .

2
30.06.2017, 22:21
3 ответа
find . ! -name . -prune -type f -name nexus\* -exec perl -i'' -pe 's/^>/$ARGV>/' {} +

Запускаем найтитолько для текущего каталога, ищем обычные файлы, имена которых начинаются с nexus, а затем выполняем редактирование на месте нескольких таких файлов, заменяя >находится в начале строки с именем файла + себя.

0
27.01.2020, 22:10

sedраствор:

for f in nexus*; do sed -i "s/^>/$f&/" "$f"; done

Или используяgawkи его inplaceрасширение (, доступное начиная с версии 4.1.0):

for f in nexus*; do awk -i inplace '/^>/{ $0=FILENAME$0 }1' "$f"; done
2
27.01.2020, 22:10

Это можно легко сделать с помощью perl one -лайнера, например:

perl -i -pe 's/>/$ARGV$_/g' nexus*

Обратите внимание, что -iизменяет файл на месте -, поэтому, если вы хотите только протестировать команду, сначала запустите ее без флага -i.

0
27.01.2020, 22:10

Теги

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