在Unix中,我想在.txt文件中的行号前后添加斜杠
此命令仅显示行号 猫-n txt.file
此:
Tony
Alpha
Bravo
对此:
/1/ Tony
/2/ Alpha
/3/ Bravo
答案 0 :(得分:1)
awk '{print "/" FNR "/ " $0}' file
答案 1 :(得分:1)
awk is probably the cleanest option,但您也可以使用nl
命令:
nl -a -n ln txt.file | sed 's/^\([0-9]*\) */\/\1\//'
(行号两边的斜线-家庭作业问题?-使之复杂。sed命令添加斜线。您可能需要根据Unix版本进行略微的编辑。我在Mac上这样做。)< / p>
答案 2 :(得分:1)
sed
解决方案是:
sed '=' file | sed 'N;s_^_/_;s_\n_/ _'
由于|
命令的局限性,这里需要一个管道=
。
答案 3 :(得分:1)
要投入bash
解决方案(速度慢):
while IFS= read -r line; do printf '/%d/ %s\n' "$((++i))" "$line"; done < file.txt
或者是一种奇怪但又“创造性”的方式(令人惊讶的是它相对较快):
paste -d" " <(seq -f "/%g/" 1 $(wc -l < file.txt)) file.txt
答案 4 :(得分:0)
Perl解决方案
>>> num = float('1.4300') # changes input into float (removes trailing 0s automatically)
>>> round(abs(num)%1, 2) == .43 # checks if it ends with .43 with 2 decimal points
True