shell/提取排序

列提取grep针对行,cut针对列

cut [选项] 文件名 //提取列
-f 列号    //指定列号提取 -d “”    //指定分隔符(默认只能提取制表符tab :需指定
例:
cut
-f 13 -d “:” /etc/passwd        //提取1和3列 grep '/bin/bash' /etc/passwd |grep -v "root"| cut -f 1 -d ":"  //提取普通用户名

 

awk‘{}’ 文件名        //提取列(针对分隔符为多个空格)
BEGIN{FS=””}        //FS指定分隔符,BEGIN为优先,END为最后
{print $1 \t}    //指定输出内容 $1为第一列

print ‘类型和格式’ 内容            //输出内容
类型    ‘%s’         输出字符串
‘%i’        输出整数
‘%8.2’    输出浮点数,8位数,2位小数
格式
\n换行
\t    tab键

例:

 awk '{print $1 "\t"$2}' ./ss

 awk‘{}’ 文件名

 awk‘{FS=}{print}’

 df -h | grep 'sda2'| awk '{print $5}'|cut -d "%" -f 1

 

字符串替换

 

sed
sed  ‘s/旧字符/新字符/g’  文件名        //替换输出,不改变原文件
sed  ‘3s/旧字符/新字符/g’ 文件名        //只替换单独一行
sed  -i ‘s/旧/新’                     //-i直接写入源文件,不输出(不显示)

 

 

排序

 

sort -t ":" -n -k 3,3 /etc/passwd
-t    指定分隔符
-n    数值,默认字符串
-k    指定以那一列进行排序
-f    忽略大小写
-r    反向排序(大到小)

例:sort -n -t ":" -k 3,3 /etc/passwd //只按第三列排序,-n指定为数值排序

 

转载于:https://www.cnblogs.com/vgzihs/p/8796389.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值