Sed、Awk和grep 学习笔记(一)
2017-02-07 20:15
274 查看
一 Sed 命令
命令格式: sed [-nefi] '[动作]' [filename]
参数:
-n 安静模式,只显示sed处理的那一行。
-e 多重编辑,可以同时执行多个动作。sed -e '1d' -e '1a ttt'
-f 将sed动作写入脚本,通过过sed -f scriptfile执行sed操作。
-i 直接编辑文本。
动作:
a 新增,接字符串可以直接出现在下一行。
c 替换,sed '1,5c kkkkkk' 1~5行使用kkkkk替换。
d 删除,sed '1d' 删除第一行。
i 插入,sed '1i kkkk'在第一行之前插入新的一行。
p 打印,sed 'p' filename 打印文本
s 替换,sed 's/abc/xxxx/g' 将abc使用xxxx替换,g是全部替换,使用数字可以指定第几次出现才替换,p是打印替换后的行
q 匹配到某行退出 3q 第三行推出。
r 匹配到的行读取某文件 sed '1r qqq' abc
w 匹配到的行写入文件 sed '/m/w qqq' abc 从abc中读取带m的行写入qqq文件中(覆盖)
实验:自动化修改克隆后的虚拟机mac地址
相关文件有两个 /etc/udev/rules.d/70-persistent-net.rules 和 /etc/sysconfig/network-scripts/ifcfg-eth0 修改70-persistent-net.rules中的网卡信息并获取mac地址替换到ifcfg-eth0中。
命令格式: sed [-nefi] '[动作]' [filename]
参数:
-n 安静模式,只显示sed处理的那一行。
-e 多重编辑,可以同时执行多个动作。sed -e '1d' -e '1a ttt'
-f 将sed动作写入脚本,通过过sed -f scriptfile执行sed操作。
-i 直接编辑文本。
动作:
a 新增,接字符串可以直接出现在下一行。
c 替换,sed '1,5c kkkkkk' 1~5行使用kkkkk替换。
d 删除,sed '1d' 删除第一行。
i 插入,sed '1i kkkk'在第一行之前插入新的一行。
p 打印,sed 'p' filename 打印文本
s 替换,sed 's/abc/xxxx/g' 将abc使用xxxx替换,g是全部替换,使用数字可以指定第几次出现才替换,p是打印替换后的行
q 匹配到某行退出 3q 第三行推出。
r 匹配到的行读取某文件 sed '1r qqq' abc
w 匹配到的行写入文件 sed '/m/w qqq' abc 从abc中读取带m的行写入qqq文件中(覆盖)
实验:自动化修改克隆后的虚拟机mac地址
相关文件有两个 /etc/udev/rules.d/70-persistent-net.rules 和 /etc/sysconfig/network-scripts/ifcfg-eth0 修改70-persistent-net.rules中的网卡信息并获取mac地址替换到ifcfg-eth0中。
#使用sed修改70-persistent-net.rules文件,修改正确的网卡信息 sed -i '/eth0/d' /etc/udev/rules.d/70-persistent-net.rules sed -i 's/eth1/eth0/g' /etc/udev/rules.d/70-persistent-net.rules #获取正确的MAC并赋值给mac mac=$(sed -e 's/^.*ATTR{address}=="//g' -e 's/",.*//g' -e '/^$/d' /etc/udev/rules.d/70-persistent-net.rules | grep -v "#") #使用sed s动作替换MAC地址(注:sed中引用变量需要将单引号改为双引号) sed "s/HWADDR=.*/HWADDR=$mac/g" /etc/sysconfig/network-script/ifcfg-eth0
相关文章推荐
- grep、awk、sed学习笔记
- grep、awk、sed学习笔记
- Linux学习笔记-grep,sed,awk(鸟哥12章 老段视频笔记)
- LVS的持久连接和awk/sed/grep的学习笔记
- 转――[Shell学习笔记] Shell正则表达式与grep、sed、awk的特点
- grep,sed,awk学习笔记
- sed,awk,grep学习笔记
- Linux下sed,awk,grep,cut,find学习笔记
- grep、awk、sed学习笔记
- shell学习笔记[grep,sed,awk,sort,for,until,while]
- sed, awk学习笔记
- Shell学习:grep, sed, awk命令的练习题
- Shell正则表达式之grep、sed、awk实操笔记
- 正则表达式学习之grep,sed和awk
- Sed 与Awk (第二版)学习笔记
- linux学习:)---grep、awk、sed
- Shell脚本学习笔记(七)--sed和awk
- 学习笔记之Shell脚本学习指南 & sed与awk & 正则表达式
- awk grep sed cut学习
- Sed 与Awk (第二版)学习笔记