У меня есть следующий файл file.txt, который следует тому же шаблону, и я хочу изменить его, где находится этот файл, добавив ip:
# gfhfhgfh
gfhfghgfhgfhgfh
MACs
# access
USER CONSOLA *,!10.249.247.3,!10.249.245.65
/bin/false
Я хочу добавить ip в конец строки, которая содержит в качестве покровителя КОНСОЛЬ ПОЛЬЗОВАТЕЛЯ:
USER CONSOLA *,!10.249.247.4,!10.249.245.65,!10.249.245.90,
На данный момент мне удается добавить ip только во весь документ, но не в этой конкретной строке, используемый код
sed 's/\r\?$/,!10.10.11.1/' file.txt
С помощью sed
вам понадобится что-то вроде следующего:
sed '/USER CONSOLA/s/$/,!10.249.245.90,/' file.txt
Сначала мы сопоставим шаблон, который хотим добавить. Затем мы используем s/$/..
что означает добавить !10.249.245.90,
как есть до конца строки.
Вот еще один awk
решение:
awk '/USER CONSOLA/{x=x; print $0",!10.249.245.90,";next}1' file.txt