Я хотел бы изменить строку «disable = yes» на «disable = no» в следующем файле:
[root@centos2 ~]# cat /etc/xinetd.d/tftp
service tftp
{
...
server_args = -s /var/lib/tftpboot
disable = yes
per_source = 11
...
}
Я попробовал это:
[root@centos2 ~]# grep 'disable = yes' /etc/xinetd.d/tftp
[root@centos2 ~]#
просто скопировав пространство моей мышью, но оно ничего не показывает ...
Почему и как я могу узнать, какие элементы находятся между "disable" и "="? Это несколько пробелов? табулирование?
Я знаю, что я могу grep, используя следующее регулярное выражение:
[root@centos2 xinetd.d]# grep -E 'disable.+= yes' /etc/xinetd.d/tftp
disable = yes
[root@centos2 xinetd.d]#
И наконец, есть ли лучший способ заменить «да» на «нет» с помощью sed, чем следующий:
[root@centos2 xinetd.d]# sed -r 's/disable.+= yes/disable =
no/g' /etc/xinetd.d/tftp
service tftp
{
...
server_args = -s /var/lib/tftpboot
disable = no
per_source = 11
...
}
РЕДАКТИРОВАТЬ :
Результат команды od благодаря @ilkkachu
[root@centos2 xinetd.d]# < /etc/xinetd.d/tftp grep disable | od -c
0000000 \t d i s a b l e
0000020 = y e s \n
0000037