Shell实例应用记录
grep
1、查询文件中关键字出现次数
grep -i keyword filename.txt|wc -l #不区分大小写 统计次数可直接用-c,如下
gerp -c "^#" filename.txt #以#号开头,文件中有多少个
find
1、查询指定目录下的文件
find /wls/logop/abc/ -name *.log|head -5 #查询abc目录下的log文件,只显示5个结果
awk
1、读取配置文件,已知配置项名称
文件格式:
配置项1:值1
配置项2:值2
......
grep 配置项1 system.conf|awk -F : '{print $2}' #$0指grep返回的整行数据,$1指配置项名称,$2指配置项的值
sed
1、关键字替换
sed "s/$keyword/$newword/g" filename.txt #g表示每行多次配关键字替换,直匹配到行末结束。不加g则每行从头开始匹配到一次替换后就结束
2、显示两个关键字之间的多行内容
sed -n '/keyword1/,/keyword2/p' filename.txt #显示包含关键字在内的多行内容
sed -n '/keyword1/,/keyword2/{//d;p}' filename.txt #显示两个关键字之间的多行内容,不包含关键字本身
3、清空两个关键字之间的多行内容
sed "/$keyword1/{N;/$keyword2/b lab;N;:lab /\n.*\n//}" filename.txt #使用标签跳转
4、关键字后增加多行内容
sed "/$keyword/r content.tmp" filename.txt #多行内容先写入content.tmp文件中,用r命令读取写入
其他场景
1、程序中需跳转到指定目录下执行脚本用括号(),命令之间用户;隔开。执行完成后回到当前程序中继续执行。
(cd di$r;cmd1;cmd2;...)

浙公网安备 33010602011771号