grep
grep -rn “egress_bandwidth” --include tc_2payload1.log > a.log
grep只在当前层级文件搜索,不会查找下级文件夹,*的作用还不知道,但是不加*就会不工作
seroiuts00514 [15:44] [verif/enuyesu/sim_ecp] -> grep sunyue *
grep: AA: Is a directory//不会向下查找
grep -r 会去下级目录查找
seroiuts00514 [15:40] [verif/enuyesu/sim_ecp] -> grep sunyue * -r
Binary file AA/.sun.log.swp matches
AA/sun.log:sunyue
AA/sun.log~:sunyue
grep -rn 会去下级目录查找,同时会显示所在文件的行数 n:number
seroiuts00514 [15:41] [verif/enuyesu/sim_ecp] -> grep sunyue * -rn
Binary file AA/.sun.log.swp matches
AA/sun.log:1:sunyue
AA/sun.log~:1:sunyue
1. > 和 < 分别代表重定向的方向,是从左到右还是从右到左
2. >> 和 << 代表追加,也就是不改变重定向目标文件原有的内容,追加在后面。
grep -rn “egress_bandwidth” --include tc_2payload1.log > a.log
是把tc_2payload1.log 文件中包含egress_bandwidth 关键字的行输入到a.log中。
include 是只在特定文件tc_2payload1.log里搜索
tc_2payload1.log:6030911:packets, egress_bandwidth = 204, CPRI egress bandwidth = 255
tc_2payload1.log:6030917:packets, egress_bandwidth = 204, CPRI egress bandwidth = 255
grep -rn “egress_bandwidth” tc_2payload1.log > a.log
不加–include但是定义输入文件,结果为在输出a.log中不会显示input文件 tc_2payload1.log
6030911:packets, egress_bandwidth = 204, CPRI egress bandwidth = 255
6030917:packets, egress_bandwidth = 204, CPRI egress bandwidth = 255
如果在当前文件夹下的所有文件搜索,结果保存到a.log
grep -rn "egress_bandwidth" > a.log
如果你搜索完egress_bandwidth,还想搜索sunyue,搜输出到a.log中用>>追加,>覆盖
seroiuts00514 [16:15] [verif/enuyesu/sim_ecp] -> grep -rn "egress_bandwidth" --include tc_2payload1.log > a.log
seroiuts00514 [16:15] [verif/enuyesu/sim_ecp] -> grep -rn "ingress" >> a.log
a.log 结果为
tc_2payload1.log:6030911:packets, egress_bandwidth = 204, CPRI egress bandwidth = 255
tc_2payload1.log:6030917:packets, egress_bandwidth = 204, CPRI egress bandwidth = 255
AA/sun.log:1:ingress
AA/sun.log~:1:ingress