使用shell脚本将数字行放入列中
我有一个有很多行的文件,比如使用shell脚本将数字行放入列中,shell,awk,Shell,Awk,我有一个有很多行的文件,比如 1 jfkdajfd 1 2 3 5 2 fkldfjld 3 fdkfloaf 9 10 4 fldfldkf 5 fdskf;ak 12 1 4 我想得到所有的数字并把它们放在一个文件的列中,比如 1 2 3 5 9 10 12 1 4 我怎样才能做到这一点? 谢谢在您的情况下,看起来您可以这样做: awk '{for (i=3;i<=NF;++i) {print $i}}' awk'{for(i=3;i 不是防
1 jfkdajfd 1 2 3 5
2 fkldfjld
3 fdkfloaf 9 10
4 fldfldkf
5 fdskf;ak 12 1 4
我想得到所有的数字并把它们放在一个文件的列中,比如
1
2
3
5
9
10
12
1
4
我怎样才能做到这一点?
谢谢在您的情况下,看起来您可以这样做:
awk '{for (i=3;i<=NF;++i) {print $i}}'
awk'{for(i=3;i
不是防弹的,也不像前面给出的解决方案那样优雅,但它显示了用于确定这是否是数字的内容。而read num alpha rest;do
while read num alpha rest; do
[[ "$rest" ]] && printf "%s\n" $rest # <-- variable is unquoted
done < filename
[[“$rest”]&&printf“%s\n”$rest#否则,您可以为(i=3;i@axiom/[0-9]+//将匹配“foo3bar”等。您需要前后锚定它为/^[0-9]+$/.True。非常感谢您指出这一点。它应该是:awk'{for(i=3;i文件中的行号是多少?也有人问
while read num alpha rest; do
[[ "$rest" ]] && printf "%s\n" $rest # <-- variable is unquoted
done < filename