semenenko88
@semenenko88
Системный администратор

Как можно отфильтровать вывод, по количеству символов в столбце?

Добрый день.

Пишу скрипт и понадобилось проделать следующее. Есть файл наподобе:
102 xxxxx xxxxxxxxxxx
150 xxxxx xxxxxxxxxxx
3000 xxxxx xxxxxxxxxxx
3600 xxxxx xxxxxxxxxxx

Вообще в первом столбики могут быть 3-ех значные числа или 4-ех. Вот как мне выводить только те строки, в которых в первом столбике 4 цифры?
  • Вопрос задан
  • 105 просмотров
Решения вопроса 2
egrep '^[0-9]{4}' /your/file/is/here
Ответ написан
Комментировать
shambler81
@shambler81 Куратор тега Linux
cut - позволяет вам вырезать данные по символам, по полю или по столбцу
собственно там вообще просто, разделитель у тебя пробел, выводишь первый столбец
манов в инете вагон.

Если еж гвоорить о grep то grep -Ev " ^[0-9][1,]" - от нуля до девяти 1 и более раз
[0-9][3,4] - оно же от 3 до 4 цифр

так же может быть полезным sed
ну и awk
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@Mrrusik
cat file | grep '^.... '
Ответ написан
Комментировать
ky0
@ky0
Миллиардер, филантроп, патологический лгун
Самый тупой способ - в цикле сравнивать первый столбец с 1000 или, если возможны варианты с ведущими нулями - считать количество символов (см. ${#VAR}).
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы