Linux 删除shell中以字符开头的行,但保留负值
我的数据集如下:Linux 删除shell中以字符开头的行,但保留负值,linux,shell,sed,grep,Linux,Shell,Sed,Grep,我的数据集如下: file.txt de fds fds a sa -1 2 -3 1 } 我想删除所有以字符或特殊字符开头的行,但保留负值。因此,我的输出文件是: out.txt -1 2 -3 1 这个问题与我前面的一个问题有关,我可以删除所有以字符开头的行,包括负号 我需要修改我的代码 我的代码: grep -E "^[0-9].*" file.txt 您可以这样尝试: grep '^ *[-+]\?[0-9]\+' file.txt > out.txt (或) 您可
file.txt
de
fds
fds
a
sa
-1
2
-3
1
}
我想删除所有以字符或特殊字符开头的行,但保留负值。因此,我的输出文件是:
out.txt
-1
2
-3
1
这个问题与我前面的一个问题有关,我可以删除所有以字符开头的行,包括负号
我需要修改我的代码
我的代码:
grep -E "^[0-9].*" file.txt
您可以这样尝试:
grep '^ *[-+]\?[0-9]\+' file.txt > out.txt
(或)
您可以这样尝试:
grep '^ *[-+]\?[0-9]\+' file.txt > out.txt
(或)
谢谢,但很抱歉,我的数字前面有空格。所以它正在删除所有的值。。。我修改了我的计划question@Kay,更新了答案。谢谢,但很抱歉,我的数字前面有空格。所以它正在删除所有的值。。。我修改了我的计划question@Kay,更新答案。
$ grep -E '^[-| ][0-9]' file.txt > out
$ cat out
-1
2
-3
1