1、使用grep -v "^#" 來去掉注釋行,其中:-v 就是取相反的 ^# 表示以#開頭的行
eg. grep -v "^#" /etc/vsftpd/vsftpd.conf (也可以使用“>”來重寫配置文件)
2、有時也會連同空行一起去掉,使用管道符來完成(^$表示空行 )
eg. grep -v "^#" httpd.conf | grep -v "^$" >> vsftpd.conf
上面用了 2次 grep 過濾命令 ,也就是把空行和注解行過濾掉,再把剩下的內容追加保存為原
來的配置文件 vsftpd.conf 這個時候就文件里的內容就沒有注解行和空行了,,,,
3、備注:在更改配置文件時,建議先對配置文件做一下備份,對配置文件不熟悉的建議不要用這種方法,配置文件中的注解行還是有一定的幫助的。
cp -a httpd.conf httpd.conf.bak
4、shell儲備知識:
^一行的開始 ^d以開頭的 ^..1 第三個為1的字符 ^字符要放在匹配的字符前面
$一行的末尾 ^$ 表示空行 ^.$匹配一行一個字符的 $字符要放在匹配的字符后面
*匹配任意個字符 包括0個字符 .表示單個字符
\可以屏蔽一個特殊的字符 \*\.pas 這里的*是特殊字符,這樣就表示*.pas這個文件
逗號可以分割不同的匹配字符如[S,s]表示S或者s都可以
-表示一個范圍,[1-9],[a-z],[A-Z] [1-9 A-Z a-z]任意的字符或者數字
A\{2\}B 表示A出現了2次 AAB
A\{4,\}B 表示A至少出現4次 AAAAB,AAAAAB
A\{2,4\}B 表示A出現2-4次 AAB AAAB AAAAB
[0-9]\{3\}\.[0-9]\{3\}\.[0-9]\{3\}\.[0-9]\{3\} 0-999.0-999.0-999.0-999
cat server.conf |grep -v "^[#,;]" |grep -v "^$"