Самый безопасный способ для записей в один столбец - использовать awk. Обычно я бы использовал grep с флагом -w
, но так как вы хотите точно найти целое число, которое может быть частью числа с плавающей запятой, это немного сложнее. -характер затрудняет использование любого из
grep -vw 0
grep -v '\b0\b'
grep -v '\<0\>'
. Предлагаемое решение также будет работать только на идеальных линиях, что, если у вас есть потерянное пространство спереди или после нуля. Линия не удастся. Поэтому самым безопасным будет:
файл с одним столбцом:
awk '($1!="0")' file
файл из нескольких слов: (принять переменную FS
для соответствует вашим потребностям)
awk '{for(i=1;i<=NF;++i) if($i == "0") next}1' file