如何去掉linux配置文件的註釋行和空行

一、使用grep -v "^#"  來去掉註釋行,其中:-v  就是取相反的   ^# 表示以#開頭的行shell

eg. grep -v "^#" /etc/vsftpd/vsftpd.conf (也能夠使用「>」來重寫配置文件)server

二、有時也會連同空行一塊兒去掉,使用管道符來完成(^$表示空行  )ftp

eg. grep -v "^#"  httpd.conf | grep -v "^$"  >> vsftpd.conf配置

上面用了 2次 grep 過濾命令 ,也就是把空行和註解行過濾掉,再把剩下的內容追加保存爲原grep

來的配置文件 vsftpd.conf  這個時候就文件裏的內容就沒有註解行和空行了,,,,方法

三、備註:在更改配置文件時,建議先對配置文件作一下備份,對配置文件不熟悉的建議不要用這種方法,配置文件中的註解行仍是有必定的幫助的。配置文件

cp  -a  httpd.conf  httpd.conf.bak註釋

四、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 "^$"

相關文章
相關標籤/搜索