Linux 第八天: (08月09日) 练习和作业
1删除/etc/grub2.cfg所有以空白开头的行行首空白字符
sed 's#^[[:space:]]\+##' /etc/grub2.cfg
sed -r 's@^[[:space:]]+@@' /etc/grub2.cfg
2删除/etc/fstab文件中所有以#开头,后面至少跟一个空白字符的行当行首的#和空白字符
sed 's@^#[[:space:]]\+@@' /etc/fstab
3在 /root/install.log每行行首增加#号
sed -r 's@(.*)@#\1@g' /root/install.log
sed -n 's/^/#/p' /root/install.log
?在 /root/install.log第1-100行行首增加#号
sed -n '1,100p' /root/install.log |sed 's/^/#/'
4在/etc/fstab文件中不以#开头的行当行首增加#号
sed 's@^[^#]@#&@' /etc/fstab
5处理/etc/fstab路径,使用sed命令取出目录名和文件名
echo /etc/sysconfig/ |sed -r 's#[^/]+/?$##' 目录名
echo "/etc/fst/sd" | sed -r 's@(.*/)([^/]+/?)$@\1@'
echo "/etc/fst/sd" | sed -r 's@(.*/)([^/]+/?)$@\2@'
echo "/etc/fst/sd" | sed -r 's@(^.*/)(.*)/?$@\1@'
echo "/etc/fst/sd" | sed -r 's@(^.*/)(.*)/?$@\2@'
6利用sed取出ifconfig命令中本机ipv4地址
ifconfig|sed -n 2p |sed -r 's/.*addr:(.*) Bca.*/\1/'
ifconfig|sed -n 2p |sed -e 's/.*addr://' -e 's/ B.*//'
7统计centos安装光盘下package目录所有rpm文件以分隔倒数第二字段的重复次数
ls *.rpm |sed -r 's#.*\.(.*)\.rpm$#\1#'|sort |uniq -c
ls *.rpm |rev |cut -d. -f2 |rev|sort |uniq -c
复制/etc/profile到/tmp/目录, 用查找替换命令删除/tmp/profile文件中的行首空白字符
sed -r 's@^[[:space:]]+@@g' /tmp/pfofile
复制/etc/rc.d/init.d/functions文件到tmp目录, 用查找替换命令为/tmp/funcitons的每行开头为空白字符的行当行首添加一个#号
%s@^[[:space:]]\+@#&@
如何设置tab缩进为4个字符?
set tabstop=4 临时设置:
vim /etc/vimr–>添加set tabstop=4 全局设置
vim ~/.vimrc 手动添加 set tabstop=4 当前用户
复制/etc/rc.d/init.d/functions文件至/tmp目录;替换/tmp/functions文件中的/etc/sysconfig/init为/var/log
cp /etc/rc.d/init.d/functions /tmp
%s@/etc/sysconfig/init@/var/log@g
sed 's@/etc/sysconfig/init@/var/log@g' /tmp/functions
删除/tmp/functions文件中所有以#开头,且#后面至少有一个空白字符的行的行首的#号
:%s@^#\([[:space:]]\+\)@\1@g
set -r 's@^#([[:space:]]+)@\1@' /tmp/functions
原创文章,作者:dengjian,如若转载,请注明出处:http://www.178linux.com/32938