删除文件中在shell脚本中只有数字的行
我有一个文件,每行都包含数字序列。我想删除只有数字的行 我试过(没用): 我的文件包含删除文件中在shell脚本中只有数字的行,shell,Shell,我有一个文件,每行都包含数字序列。我想删除只有数字的行 我试过(没用): 我的文件包含 1 name 2 3 Age 4 5 state 6 city 我希望输出为 1 name 3 Age 5 state 6 city 一个简单的公式可以: cat input_file | awk ' ($2 != "") { print $N } ' 编辑:从汤姆的评论看更干净的方式 awk ' ($2 != "") { print $0 } ' input_file 一个简单的公式可以: cat
1 name
2
3 Age
4
5 state
6 city
我希望输出为
1 name
3 Age
5 state
6 city
一个简单的公式可以:
cat input_file | awk ' ($2 != "") { print $N } '
编辑:从汤姆的评论看更干净的方式
awk ' ($2 != "") { print $0 } ' input_file
一个简单的公式可以:
cat input_file | awk ' ($2 != "") { print $N } '
编辑:从汤姆的评论看更干净的方式
awk ' ($2 != "") { print $0 } ' input_file
最简单的方法是使用grep并查找包含任何字符的行 testfile.txt:
1 name
2
3 Age
4
5 State
6 city
然后尝试:
grep '[a-zA-Z]' testfile.txt
1 name
3 Age
5 State
6 city
最简单的方法是使用grep并查找包含任何字符的行 testfile.txt:
1 name
2
3 Age
4
5 State
6 city
然后尝试:
grep '[a-zA-Z]' testfile.txt
1 name
3 Age
5 State
6 city
从该文件开始:
name
Age
state
city
您可以跳过空行并添加如下数字:
awk 'NF { print NR, $0 }' file
当该行包含任何非空白字符(即空格或制表符以外的任何字符)时,请打印行号,后跟该行的内容
如果数字已经在输入文件中,您可以使用以下方法:
awk 'NF > 1' file
这将打印包含多个字段的任何行。从该文件开始:
name
Age
state
city
您可以跳过空行并添加如下数字:
awk 'NF { print NR, $0 }' file
当该行包含任何非空白字符(即空格或制表符以外的任何字符)时,请打印行号,后跟该行的内容
如果数字已经在输入文件中,您可以使用以下方法:
awk 'NF > 1' file
这将打印包含多个字段的任何行。此问题不显示任何研究效果。您向我们显示的第一个文件是
input\u file
或output\u file
?此问题不显示任何研究效果是您向我们显示的第一个文件input\u file
或output\u file
?N
因此将被强制为0
。如果您想引用整行内容,请直接使用$0
,或者只需编写打印
。另外,也不需要将cat传输到awk。谢谢@J.Chomel和@Tom FenechN
未定义,因此将强制执行0
。如果您想引用整行内容,请直接使用$0
,或者只需编写打印
。另外,也没有必要用管子把猫传给awk。谢谢@J.Chomel和@Tom Fenech