# sed '/^UUID/=' /etc/fstab
#
# /etc/fstab
# Created by anaconda on Fri Feb 24 02:20:51 2017
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/VolGroup-lv_root
/ ext4 defaults 1 1
10
UUID=2020ea71-49cf-488e-bd6c-de72a001082b
/boot
ext4 defaults 1 2
/dev/mapper/VolGroup-lv_swap
swap swap defaults 0 0
tmpfs
/dev/shm
tmpfs defaults 0 0
devpts
/dev/pts
devpts gid=5,mode=620 0 0
sysfs
/sys
sysfs defaults 0 0
proc
/proc
proc defaults 0 0
结果:
# sed -n '/^UUID/=' /etc/fstab
10
s///:查找条件可以使用模式,但要替换的内容不能使用
# cat sed.txt
He like his liker.
He like his lover.
She love her liker.
She love her lover.
sed 匹配使用'//',匹配内容(l..e)的行,.* 表示后面出现多次的,1表示第一次匹配到的前两行匹配到like,后两行匹配到love。1r代表liker和lover.
# sed '/\(l..e\).*\1r/d' sed.txt
He like his lover.
She love her liker.
#去掉r匹配也能成功.
# sed '/\(l..e\).*\1/d' sed.txt
He like his lover.
She love her liker.
行首为#号开头的行替换为空行。
# sed 's/^#//g' /etc/fstab
/etc/fstab
Created by anaconda on Wed Apr 19 00:39:18 2017
Accessible filesystems, by reference, are maintained under
'/dev/disk'
See
man
pages fstab(5), findfs(8),
mount
(8) and
/or
blkid(8)
for
more
info
/dev/mapper/VolGroup-lv_root
/ ext4 defaults 1 1
UUID=1f522592-b116-4599-b4b8-2e292acc984a
/boot
ext4 defaults 1 2
/dev/mapper/VolGroup-lv_swap
swap swap defaults 0 0
tmpfs
/dev/shm
tmpfs defaults 0 0
devpts
/dev/pts
devpts gid=5,mode=620 0 0
sysfs
/sys
sysfs defaults 0 0
proc
/proc
proc defaults 0 0
删除空白行:
root@localhost ~]# sed '/^$/d' /etc/fstab
#
# /etc/fstab
# Created by anaconda on Wed Apr 19 00:39:18 2017
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/VolGroup-lv_root
/ ext4 defaults 1 1
UUID=1f522592-b116-4599-b4b8-2e292acc984a
/boot
ext4 defaults 1 2
/dev/mapper/VolGroup-lv_swap
swap swap defaults 0 0
tmpfs
/dev/shm
tmpfs defaults 0 0
devpts
/dev/pts
devpts gid=5,mode=620 0 0
sysfs
/sys
sysfs defaults 0 0
proc
/proc
proc defaults 0 0
替换行首以#行开头的行后面跟至少一个空白字符的行替为空.
sed 's/^#[[:space:]]\{1,\}//g' /etc/fstab
sed 's/^#[[:space:]]\+//g' /etc/fstab
#
/etc/fstab
Created by anaconda on Wed Apr 19 00:39:18 2017
#
Accessible filesystems, by reference, are maintained under
'/dev/disk'
See
man
pages fstab(5), findfs(8),
mount
(8) and
/or
blkid(8)
for
more
info
#
/dev/mapper/VolGroup-lv_root
/ ext4 defaults 1 1
UUID=1f522592-b116-4599-b4b8-2e292acc984a
/boot
ext4 defaults 1 2
/dev/mapper/VolGroup-lv_swap
swap swap defaults 0 0
tmpfs
/dev/shm
tmpfs defaults 0 0
devpts
/dev/pts
devpts gid=5,mode=620 0 0
sysfs
/sys
sysfs defaults 0 0
proc
/proc
proc defaults 0 0
删除以空白为行首开始的行的空白
sed 's/^[[:space:]]\+//' /etc/grub.conf
sed 's/^[[:space:]]\{1,\}//' /etc/grub.conf
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You have a /boot partition. This means that
# all kernel and initrd paths are relative to /boot/, eg.
# root (hd0,0)
# kernel /vmlinuz-version ro root=/dev/mapper/VolGroup-lv_root
# initrd /initrd-[generic-]version.img
#boot=/dev/sda
default=0
timeout=5
splashimage=(hd0,0)
/grub/splash
.xpm.gz
hiddenmenu
title CentOS (2.6.32-431.el6.x86_64)
root (hd0,0)
kernel
/vmlinuz-2
.6.32-431.el6.x86_64 ro root=
/dev/mapper/VolGroup-lv_root
rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD rd_LVM_LV=VolGroup
/lv_swap
SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_LVM_LV=VolGroup
/lv_root
KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet
initrd
/initramfs-2
.6.32-431.el6.x86_64.img
# echo /etc/sysconfig/network | sed 's@[^/]\{1,\}/\?$@@'
/etc/sysconfig/
-f sed执行运行的脚本文件,如果多行可以换行写.
[root@localhost ~]
# echo /etc/sysconfig/network | sed 's@[^/]\{1,\}/\?$@@'
/etc/sysconfig/
[root@localhost ~]
# vim 2.txt
[root@localhost ~]
# echo /etc/sysconfig/network | sed -f 2.txt
/etc/sysconfig/
[root@localhost ~]
# cat 2.txt
s@[^/]\{1,\}/\?$@@
[root@localhost ~]# sed 's/^#//g' /etc/fstab | sed '/^$/d'
/etc/fstab
Created by anaconda on Wed Apr 19 00:39:18 2017
Accessible filesystems, by reference, are maintained under '/dev/disk'
See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
/dev/mapper/VolGroup-lv_root / ext4 defaults 1 1
UUID=1f522592-b116-4599-b4b8-2e292acc984a /boot ext4 defaults 1 2
/dev/mapper/VolGroup-lv_swap swap swap defaults 0 0
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
[root@localhost ~]# sed -f 2.txt /etc/fstab
/etc/fstab
Created by anaconda on Wed Apr 19 00:39:18 2017
Accessible filesystems, by reference, are maintained under '/dev/disk'
See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
/dev/mapper/VolGroup-lv_root / ext4 defaults 1 1
UUID=1f522592-b116-4599-b4b8-2e292acc984a /boot ext4 defaults 1 2
/dev/mapper/VolGroup-lv_swap swap swap defaults 0 0
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
[root@localhost ~]# cat 2.txt
s/^#//g
/^$/d
结果:
-e :指定多个编辑命令.
[root@localhost ~]# sed -e 's/^#//g' -e '/^$/d' /etc/fstab
/etc/fstab
Created by anaconda on Wed Apr 19 00:39:18 2017
Accessible filesystems, by reference, are maintained under '/dev/disk'
See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
/dev/mapper/VolGroup-lv_root / ext4 defaults 1 1
UUID=1f522592-b116-4599-b4b8-2e292acc984a /boot ext4 defaults 1 2
/dev/mapper/VolGroup-lv_swap swap swap defaults 0 0
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-05/144214.htm