cat
大容量ファイルを使用して検索していますgrep
。cat
常にどの行がどの行であるかを知る必要があります。
検索したい場合ball
:
cat file.txt | grep ball
文書:
football
tennis
hockey
basketball
...
私は必要です:
1. row - football [1/1000]
2. row - [2/1000]
2. row - [3/1000]
3. row - basketball [4/1000]
答え1
十分awk
+wc
方法:
サンプルfile.txt
:
football
tennis
hockey
basketball
boxing
awk -v t=$(wc -l file.txt | cut -d' ' -f1) '{ printf "%s[%d/%d]\n",(/ball/? $0" ":""),NR,t }' file.txt
出力:
football [1/4]
[2/4]
[3/4]
basketball [4/4]
[5/5]
答え2
実行するとgrep -n ball file.txt
出力されます
1:football
4:basketball