shel脚本编辑hosts文件(awk、sed、ed)
来源:互联网 发布:中国国民党知乎 编辑:程序博客网 时间:2024/06/06 02:15
1. ed命令写hosts、删除指定的hosts配置
echo --------------------------修改hosts文件 ,在末尾追加一行, /etc/hosts--------------------------
(echo 'a';echo '127.0.0.1 https://www.baidu.com ';echo '.';echo 'wq')|ed /etc/hosts
echo --------------------------恢复hosts文件 ,删除指定行的配置, /etc/hosts--------------------------
(echo 'd';echo '127.0.0.1 https://www.baidu.com';echo '.';echo 'wq')|ed /etc/hosts
2. awk分割字符串,循环,写文件
#!/bin/sh
echo -------------------------- awk insert file --------------------------
x=‘10.35.45.84 mobile-api2011.baidu.com;127.0.0.1 elp.baidu.com;192.168.231.99 minder.baidu.com;’
#echo $x | awk '{ split($0,arr,";");for( i in arr) {print arr[i] >> "/etc/hosts"}}'
3.shell脚本 + sed分割字符串,循环,写文件
1)循环写文件 echo $hosts hosts=${hosts//,/ }; i=1 while((1==1)) do split=`echo $hosts|cut -d ";" -f$i` if [ "$split" != "" ] then ((i++)) sed -ie "/$split/d" /etc/hosts echo $split >>/etc/hosts else break fi done sed -ie '/^$/d' /etc/hosts echo -------------------------- host file -------------------------- cat /etc/hosts echo -------------------------- host file --------------------------or==================================================================================#!/bin/bashuser=$REMOTEi=1while((1==1))do split=`echo $user|cut -d ";" -f$i` if [ "$split" != "" ] then ((i++)) echo $split sed -i "a $split" /etc/hosts else break fidoneecho -------------------------- host file --------------------------cat /etc/hostsecho -------------------------- host file --------------------------
2)循环删除文件 /etc/hosts中 的匹配行的字符串
<command>echo "-------------------------- clear host --------------------------" echo $hosts hosts=${hosts//,/ }; i=1 while((1==1)) do split=`echo $hosts|cut -d ";" -f$i` if [ "$split" != "" ] then ((i++)) sed -ie "/$split/d" /etc/hosts else break fi done echo -------------------------- host file -------------------------- cat /etc/hosts echo -------------------------- host file --------------------------
or===================================================================================#!/bin/bash
user=‘10.35.45.84 mobile-api2011.baidu.com;127.0.0.1 elp.baidu.com;192.168.231.99 minder.baidu.com;’
i=1
while((1==1))
do
split=`echo $user|cut -d ";" -f$i`
if [ "$split" != "" ]
then
((i++))
echo $split
sed -ie "/$split/d" /etc/hosts
else
break
fi
done
echo -------------------------- host file --------------------------
cat /etc/hosts
echo -------------------------- host file --------------------------
- shel脚本编辑hosts文件(awk、sed、ed)
- sed & awk (1) 基础-ed
- shell文件编辑工具,sed -i与ed的区别
- O'Reilly Sed & Awk 2nd Ed读书笔记(一)
- O'Reilly Sed & Awk 2nd Ed读书笔记(二)
- Linux Shell脚本(正则/Sed/AWK)
- GNU sed 提供了-i选项,为什么有人说sed -i 并不象 ed 一样真正的编辑文件
- delphi编辑hosts文件
- ed编辑器--适用于shell脚本内编辑文件的最最简单编辑器
- 使用 cat、ed 和 sed 的快速编辑示例
- 《SED 单行脚本快速参考》的 awk 实现(转)
- shell脚本知识(三) 正则表达式 grep sed awk
- RH254-第二十八节-脚本这sed,awk,grep(二)
- awk/sed操作ini文件
- shell脚本awk, sed, cut的妙用
- sed & awk单行脚本快速参考
- Sed、Awk单行脚本快速参考
- SED和AWK单行脚本快速参考
- 深度学习——Xavier初始化方法
- Java中ArrayList和LinkedList区别
- 在docker中使用mongo数据库,在局域网访问
- 使用 Phabricator & Arcanist 进行 Code Review 的流程
- 使用AsyncTask加载网络图片并保存到手机本地
- shel脚本编辑hosts文件(awk、sed、ed)
- Android N SIM 卡信息加载流程
- 在docker中使用mysql数据库,在局域网访问
- TCP的3次握手与4次挥手
- java容器之五_HashMap
- 12c dbca CRS-2674: Start of 'ora.orcl.db' on 'rac1' failed ORA-01017: invalid username/password; log
- Js中的fliter(),map(),forEach()迭代方法
- jQuery实现CheckBox全选、全不选
- centOS下安装完mysql后的设置