shell 獲得字串所在行數及位置
阿新 • • 發佈:2019-12-31
shell 獲得字串所在行數及位置
01 獲取字串所在的行數
方式一:用grep -n
[root@root]# cat test
apple
bit
create
delect
exe
flow
good
[root@root]# cat test | grep -n exe
5:exe
[root@root]# cat test | grep -n exe | awk -F ":" '{print $1}'
5
複製程式碼
方式二:用sed -n '/查詢的字串/=' 檔案
[root@root]# cat test
apple
bit
create
delect
exe
flow
good
[root@root]#
[root@root]# sed -n '/exe/=' test
5
複製程式碼
02 獲取字串中字元所在的位置
方式一:用awk -F
和 wc -c
組合
[root@root]# echo 'uellevcmpottcap' | awk -F 'ott' '{print $1}';
uellevcmp
[root@root]# echo 'uellevcmpottcap' | awk -F 'ott' '{print $1}' | wc -c
10
複製程式碼
方式二:用awk 'BEGIN{print index("'${str}'","'${str1}'") }'
[root@root]# str='uellevcmpottcap';str1='ott';awk 'BEGIN{print index("'${str}'","'${str1}'") }'
10
複製程式碼