grep 元字符 锚定符 cut test sort uniq 整数测试 字符串测试 文件测试 diff patch sed

cat:
-A
-n
-s,压缩空白行

more
less -M

head
tail

grep,全面搜索正则表达式,并打印之
egrep -> grep -E 扩展grep
 *  0<=次
 ?  出现0或1次 a?root broot
 +  1<=次 a+root
 () .*(abc)*.* wabcv,qwabcqwe
 | 或者 like your liker, love your lover   l(ik)|(ov)e your lover
fgrep -> grep -F 快速grep
-v:反向显示
-i:忽略大小写
-n:在匹配的结果只挑取有限范围行
-An:在匹配的结果显示匹配范围外的n行

patter,模式,从文件中匹配整个模式,然后显示包含了匹配到得内容的行

元字符
. grep 'r..r' /etc/passwd
* 次数匹配  a*root,abroot,aaroot,aroot,root
.* 匹配任意字符两次
/{n/} a/{2/}root -> aaroot
/{m,n/}    至少m次至多n次  a/{0,2/}root  root,aaroot,aroot
/{n,/}    至少n次,多则不限
/(.../)    love your lover love.*lover /(love/).*/1r
    like your liker, love your lover     /(l/).*/1over
^$ 空白行

grep --color=auto 'root' /etc/passwd

*   r*t,rt,rrt,rrrt,t  匹配前面字符0次或任意次
r/{2/}*t 中间字符出现两次
r/{2,/}*t 中间字符至少出现两次

锚定符:
^root 以root开头
root$ 以root结尾
[] 匹配括号中的字符范围的单个字符,出现一次
[^] 除了范围之内的范围的单个字符
/< /<root root出现在词首 roota,root
/> root/> root出现在词尾 aroot,root
/<  />     /<root/> 确定一个词 root


如何表示以零个或多个大/小写字母开头,后跟一个非句点的字符,再跟零个或多个数字和一个换行符的行
[[:alpha:]]*[^.][0-9]*


如何,精度为2的小数
/<[0-9]/{1,/},[0-9]/{2/}/>

搜索正确的IP地址
/(1[0-9]/{2/}|25[0-4]|[1-9][0-9]|[1-9]|2[0-4][0-9]/)/./(1[0-9]/{2/}|25[0-4]|[1-9][0-9]|[0-9]|2[0-4][0-9]]/)/./(1[0-9]/{2/}|25[0-4]|[1-9][0-9]|[0-9]|2[0-4][0-9]/)/./(1[0-9]/{2/}|25[0-4]|[1-9][0-9]|[1-9]|2[0-4][0-9]/)


cut 用于切割文件内容
cut
-d
-f 选取的段
cut -d: -f1 /etc/passwd | grep "/<root/>"

条件测试:
test express
test 1 > 2      结果0(假)或非0(真)

echo $?   获取最后一个命令的返回值

/dev/null “黑洞” 没用的东西都可以放入其中

wc 统计
-l 统计行数

sort 排序
-o 输出
-r 逆序
-n 以数值来排序
-f 忽略大小写
-u 除去重复行
-t 指定分段 -t:
-k 指定段  

uniq 去除重复的行
-c 显示重复个数
-u 显示不重复的行
-d 显示重复的行

test expression    test 1 -gt 2
[expression] [1 -gt 2]
[[expression]] [[1 -gt 2]]
-a 与    -o 或   !非

短路操作符

&&
[ $B -gt $A -a $B -gt $C ] -> [ $B -gt $A ] && [ $B -gt $C ]

||

test:

整数测试:
-gt
-lt
-ge
-le
-eq
-ne
(($A > $B))
> >=

字符串测试:
=
!=
>
<
-z
-n


文件测试:
-e FILE
-f
-d
-r
-w
-x
-L/-h    测试一个文件是否为富含连接文件
-o 测试此文件属主是否为发起命令的人
-G 测试此文件属组是否为发起命令的人的组


diff/patch

diff 111 222     用222来补111
diff 111 222 > 333.patch 333.patch为补丁
patch 111 < 333.pach 打补丁
patch -R 111 < 333.pach    补丁降级

diff:
-u 输出格式不同


sed 流编辑器

sed [oprtions] 'parrern/operation' FILE
-i: 修改源文件
-e: 多操作
-f: 引用文件修改

addr1,addr2
1,$
p 后缀,打印
d
s/pattern/substitude/   g 匹配每个字符  i忽略大小写

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值