Intereting Posts
Как проверить, активирована / активирована функция добавления на сервере Linux Как получить исходный вывод форматирования команд? Используйте AWK для разделения подстроки на последние n символов на новый столбец OpalCryptoErase.exe для Linux Использование предела iptables -m в противоположном направлении Как перенести конфигурацию между компьютерами с различным оборудованием? Система зависает при выполнении любой опции загрузки в живой USB-установке Монетного двора Как удалить самый старый файл через FTP с помощью CURL? Невозможно изменить яркость на Toshiba P855 – попробовал каждый дистрибутив уже sudo nohup и redirect Whonix 13.0.0.1.4 и 14.0.0.2.6 не загружаются Как удалить фиксированную часть некоторых строк из текстового файла? Какие ключи генерируются во время установки Debian 7.4 (Wheezy)? Портирование быстрых клавиш GNOME на URXVT Почему sshd перезапускается при запуске yum cron?

Linux, печать определенных частей текстового документа

Я хочу напечатать для каждой строки данного документа первые имена и возрасты людей (которые являются записями документа). Какую команду linux я бы использовал? Надеемся, что вокруг grep будет использоваться шаблон регулярного выражения.

Пример входного документа:

Linda:F:Las Vegas, USA:18:telnet Steve:M:Leipzig, Germany:33:ftp Henry:M:Milan, Italy:19:sftp Alice:F:Izmir, Turkey:32:pop3s Robert:M:Verona, Italy:21:scp Olga:F:Gorontalo, Indonesia:19:pop3s Kimberly:F:Lille, France:25:ping Henry:M:Oslo, Norway:26:ftp Carol:F:New Delhi, India:23:pop3s Thomas:M:New Delhi, India:32:http 

Вы можете использовать cut :

 cut -d: -f1,4 file Linda:18 Steve:33 Henry:19 Alice:32 Robert:21 Olga:19 Kimberly:25 Henry:26 Carol:23 Thomas:32 

Вы можете использовать awk :

 $ awk -F':' '{print $1,$4}' file Linda 18 Steve 33 Henry 19 Alice 32 Robert 21 Olga 19 Kimberly 25 Henry 26 Carol 23 Thomas 32 

sed 's/\([^:]*:\)[^:].*:\([^:]*\):.*/\1\2/' < file

 Linda:18 Steve:33 Henry:19 Alice:32 Robert:21 Olga:19 Kimberly:25 Henry:26 Carol:23 Thomas:32