У меня есть список ...
Group Chl# Code Name TMS ID Entitled
SPP Basic 1 VOD Charter On Demand 32046 true
Stream 2 KTVI KTVI 10750 true
Stream 4 KMOV KMOV 10575 true
Stream 5 KSDK KSDK 10685 true
Stream 6 SLATE VideoSlate 0 true
Stream 7 ION WRBU 11530 true
Stream 9 KETC KETC 10443 true
Stream 13 DAYSTAR WPXS Daystar Television 11337 true
Stream 14 SLATE VideoSlate 0 true
Tier 2 15 NFL NFL Network 34710 true
Stream 16 CSPAN CSPAN (Cable Satellite Public Affairs Network) 10161 true
Stream 17 UNI Univision Network (East) 11118 false
Tier 1 18 SECN SEC Network 89535 true
...
Select 104 HILLSNG The Hillsong Channel 29328 true
SPP Tier 1 106 BYUTV BYU - TV 21855 true
Tier 1 107 COWBOY The Cowboy Channel 10188 true
...
Tier 1 121 TNCK Nick - TeenNick 59036 true
SPP Tier 2 122 CI Crime and Investigation Network 48543 true
Tier 2 123 SMITH Smithsonian Channel 65799 true
...
Stream Sports, News & More 806 NBCSNHD NBC Sports Network HDTV 48639 true
SPP Tier 1 807 OLYHD Olympic Channel HDTV 104089 true
Select 809 GLFHD Golf Channel HDTV 61854 true
Tier 2 810 TNNSHD Tennis Channel HDTV 60316 true
Stream Sports, News & More 811 FS1HD Fox Sports 1 HD 82547 true
Если я получаю grep для числа, оно должно совпадать в столбце Chl#
.
Например, если я grep 121
в этих данных, он должен вернуть
Tier 1 121 TNCK Nick - TeenNick 59036 true
Если я grep 122, он должен вернуть
SPP Tier 2 122 CI Crime and Investigation Network 48543 true
Версия:
$ grep -V
GNU grep 2.6.3
Этот grep, похоже, не распознает REGEX, как это:
(?=x)d
, что означает совпадение d
, только если ему предшествует x
, но не включает x
.
Когда я получаю совпадение, меня интересует последнее поле, true или false.
Я легко могу получить это с помощью awk: {print $NF}
. Использование grep
не является обязательным требованием. Я бы предпочел использовать sed
, grep
и / или awk
. Но не perl
.
Первый столбец может содержать 0, 1 или более пробелов. Может иметь номер, запятую.
Второй столбец представляет собой число от 1 до 4 цифр.
Третий столбец - это одно слово.
Четвертый столбец может содержать несколько пробелов.
Пятым является число с 1 или более цифрами.
А шестое - «истинно» или «ложно».
Я играл с этим несколько часов. Любые предложения будут оценены.