天天看點

企業場景運維案例:sed實戰修改多行配置技巧

老男孩老師有關sed實戰技巧分享,來自課堂教學内容實戰

企業場景運維案例:sed實戰修改多行配置技巧

1、在指定行前插入兩行内容,分别為oldboy和oldgirl。

提示:被修改的檔案内容必須要大于等于2行

sed -i '2 ioldboy\noldgirl' sshd_config 

2、企業實戰例子:快速更改ssh配置(一鍵完成增加若幹參數)

增加:

[root@oldboy ssh]# sed -i '13 iport 52113\npermitrootlogin no\npermitemptypasswords no\nusedns no\ngssapiauthentication no'  sshd_config 

檢視:

[root@oldboy ssh]# sed -n '13,17p' sshd_config  

port 52113 

permitrootlogin no 

permitemptypasswords no 

usedns no 

gssapiauthentication no 

3、如果是快速修改參數可以用如下方法(企業實戰例子)

echo "#--------sshconfig修改ssh預設登入端口,禁止root登入----------------------------#" 

\cp /etc/ssh/sshd_config /etc/ssh/sshd_config.$(date +"%f"-$random) 

sed -i 's%#port 22%port 52113%' /etc/ssh/sshd_config 

sed -i 's%#permitrootlogin yes%permitrootlogin no%' /etc/ssh/sshd_config 

sed -i 's%#permitemptypasswords no%permitemptypasswords no%' /etc/ssh/sshd_config 

sed -i 's%#usedns yes%usedns no%' /etc/ssh/sshd_config 

sed -i 's%gssapiauthentication yes%gssapiauthentication no%' /etc/ssh/sshd_config 

egrep "usedns|52113|rootlogin|emptypass|gssapiauthentication" /etc/ssh/sshd_config 

提示:如果是指定行修改還可以是:

sed -i '2735s/admin_tenant_name=service/adminadmin_tenant_name=admin/' nova.conf 

作者:老男孩linux運維

來源:51cto