
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 这个时候就文件里的内容就没有注解行和空行了。
扩展资料:注意事项
1、^一行的开始 ^d以开头的 ^..1 第三个为1的字符 ^字符要放在匹配的字符前面
2、$一行的末尾 ^$ 表示空行 ^.$匹配一行一个字符的 $字符要放在匹配的字符后面
3、*匹配任意个字符 包括0个字符 .表示单个字符
4、\可以屏蔽一个特殊的字符 \*\.pas 这里的*是特殊字符,这样就表示*.pas这个文件
5、逗号可以分割不同的匹配字符如[S,s]表示S或者s都可以
6、-表示一个范围,[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 "^$"
1、在文件的首行插入指定内容:
:~$ sed -i "1i#! /bin/sh -" a
执行后,在a文件的第一行插入#! /bin/sh -
2、在文件的指定行(n)插入指定内容:
:~$ sed -i "niecho "haha"" a
执行后,在a文件的第n行插入echo "haha"
3、在文件的末尾行插入指定内容:
用第二种方法也可以。一般实现:
:~$ echo “haha” >>a
执行后,在a文件的末尾行插入haha
对于比较大的文件,打开整个文本文件是不现实的,因为文件本身可能都是内存的好几倍。由于需要,查看文件中指定行的内容,可以使用如下命令:sed -n 行数p 文件名
如果文件非常大,读出需要等待一段时间。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)