Léo*_* 준영 9 awk text-processing nl
我首先想到了 SED ( sed "s/^/COUNTER \&/" /tmp/1.tex
) 但它是为单行设计的,我现在无法通过 sed 增加计数器本身,awk
因为我gawk
在集成方法方面拥有丰富的经验。数据
What & South Dragon & North Dragon & 5 \\ \hline
What & South Dragon & North Dragon & 5 \\ \hline
What & South Dragon & North Dragon & 5 \\ \hline
Run Code Online (Sandbox Code Playgroud)
预期输出
1 & What & South Dragon & North Dragon & 5 \\ \hline
2 & What & South Dragon & North Dragon & 5 \\ \hline
3 & What & South Dragon & North Dragon & 5 \\ \hline
Run Code Online (Sandbox Code Playgroud)
操作系统:Debian 8.5
Dop*_*oti 11
nl
是一个对文件行进行编号的实用程序。用法:
nl /path/to/file
Run Code Online (Sandbox Code Playgroud)
在您的具体情况下:
$ nl -s ' & ' input.txt
1 & What & South Dragon & North Dragon & 5 \\ \hline
2 & What & South Dragon & North Dragon & 5 \\ \hline
3 & What & South Dragon & North Dragon & 5 \\ \hline
Run Code Online (Sandbox Code Playgroud)
ste*_*eve 10
这实现了你所追求的。(也是awk '$0=NR" & "$0' filename
,但这有点神秘)
awk '{print NR,"&",$0}' filename
1 & What & South Dragon & North Dragon & 5 \\ \hline
2 & What & South Dragon & North Dragon & 5 \\ \hline
3 & What & South Dragon & North Dragon & 5 \\ \hline
Run Code Online (Sandbox Code Playgroud)
或者,如果sed
更可取,这会给出相同的结果。
sed = filename | sed 'N;s/\n/ \& /'
Run Code Online (Sandbox Code Playgroud)
perl
方法。
perl -pe '$_="$. & $_"' filename
perl -pe 's/^/$. & /' filename
Run Code Online (Sandbox Code Playgroud)