linux - two - sed print from match to match




Удалите строки, начинающиеся с символа в оболочке, но сохраняйте отрицательные значения (2)

Вы можете попробовать следующее:

grep '^ *[-+]\?[0-9]\+' file.txt > out.txt

(Или)

grep -E '^ *[-+]?[0-9]+' file.txt > out.txt

У меня есть набор данных:

file.txt
de
fds
fds
a
sa
 -1
 2
 -3
 1
}

Я хотел бы удалить все строки, начинающиеся с символов или специальных символов, но сохранить отрицательные значения. Итак, мой outfile:

out.txt
-1
2
-3
1

Этот вопрос связан с одним из моих предыдущих вопросов. Удалите строки, начинающиеся с символа в оболочке, с которым я могу удалить все строки, начинающиеся с символа, включая отрицательный знак.

Мне нужно изменить код.

мой код:

grep -E "^[0-9].*" file.txt

$ grep -E '^[-| ][0-9]' file.txt > out
$ cat out
-1
 2
-3
 1




grep