常见处理文本的SHELL命令

1、循环读取

for ip in $(seq 1 4)

do

...

done

逐行读取

一、

for line in $(cat a.txt)
do
echo $line
done

二、

cat a.txt| while read line
do
echo $line
done
三、

while read line
do
echo $line
done < a.txt


2、字符过滤

grep -v aaa

-i 不区分大小写

-w 全匹配

-v 排除

  

3、字符串切割

1)[oracle@orax ~]$ echo "1=5=3=4" |cut -d '=' -f 2

5

cut命令主要是接受三个定位方法:

第一,字节(bytes),用选项-b

第二,字符(characters),用选项-c

第三,域(fields),用选项-f


如kill含有xuanxx的所有进程

ps -ef|grep xuanxx|cut -c 10-15|xargs kill 9

2)

[oracle@orax ~]$ echo "1=5=3=4" |awk -F"=" '{print $3}'
3


4、字符替换

sed -i  's/xuan/xuAn/g' a.txt   


sed的详细用法

5、统计

wc -l  总行数

wc -L 字符长度

6、查找和处理

1)时间查找 

两天前

[oracle@orax ~]$ find /home/oracle/ -type  f -mtime +2 -name *txt

前两天到现在

[oracle@orax ~]$ find /home/oracle/ -type  f   -maxdepth  1 -mtime -2 -name *txt

2)排序

[oracle@orax ~]$ sort a.txt 

倒序   sort -r  a.txt

3)去重

cat a.txt|sort|uniq 

3)批量处理

[oracle@orax ~]$ find /home/oracle/ -type  f -mtime +2 -name *txt  -exec rm {} \;

[oracle@orax ~]$ find /home/oracle/ -type  f -mmin +60 -name *txt  -exec rm {} \;

查找包含内容文件

find /home/gbase/xuanxx/ -type -f |xargs grep "IP" -l \;


字符集替换

${变量/查找/替换值}

a=xxx_n1

echo ${a/_n1/n2}

xxx_n2




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值