Bash-Shell-02

管道命令

#选取命令: grep/cut
cut -d '分割符' -f num    #num参数为分割的第num块
p=asd:qwe:bnm:lop
echo $p | cut -d ':' -f 2
qwe  #以:为分隔符,,第二块

#sort命令
cat > x
12
3545
456
978
2343
cat x | sort -n  #按照数字排序
12
456
978
2343
3545
cat x | wc  #统计行数,字符数

# -u 去掉重复的,按字符排序  -r反向排序(更多参考p336,《鸟哥的linux私房菜》)

#双向重定向  tee
cat x | tee backup.txt  # cat x的结果,输出到屏幕,并保存到backup.txt 文件
tee -a   #追加到文件

#字符转换命令
cat x | tr '[a-z]' '[A-Z]'  #将cat x 输出的结果全部变成大写
cat x | tr -d 'rwx'   # 删除所有r w x
grep -n '要查找的字符串' filename   #在filename中查找字符串  -n显示行数 -v除了要查找的字符外都显示
#-i忽略大小写
grep -n 'fd[hf]' z  #查找z中的fdh或者fdh  []中是选择的
grep -n '[^a-g]fd' z  #查找z中 前面不是a-g,后面是fd后缀的字符
grep -n '[^[:lower:]]s' z  #查找大写字符并且后缀为s 
grep -n '[[:digit:]]' z  #找出z中所有的带数字的行
grep -n '[[:punct:]]' z  #找出所有的标点符号
grep -n '^[^a-z]' z  #所有不以小写开头  ^在[]外面有开头的意思,在里面有不取(反向选择)的意思,所以可以解释为不以a-z开头
#grep 的更多用法详情请看p356《鸟哥linux私房菜》

sed命令

nl z | sed '2,5d'  #将2-5行去掉
nl z | sed '3,$d'  #删掉第三行到最后一行
nl z | sed '2a I AM TWO YOUNG'  #在第二行后面加入 后面那段文字
nl z | sed '2i I AM TWO YOUNG'  #在第二行前面加入 后面那段文字
nl z | sed '2,4c I AM TWO YOUNG \ rerererer'  #c 替换2-4行,为后面那段
nl z | sed -n '2,4p'  #查找2-4行
#直接修改文件
sed -i 's/fd/PPD/g' z  #将z中的fd全部替换成PPD  -i直接对文件操作
sed 's /替换的字符串/新的字符串/g'
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值