Удалить строку и пробел во втором столбце текстового файла - PullRequest
0 голосов
/ 11 июня 2018

Я хочу удалить определенную строку "num =" из второго столбца текстового файла TAB-DELIMITED .

this is a sentence  num= 123.45
this is a phrase    num= 768.90

Я знаю, как удалить «num =» с помощью sed, но я не могу удалить пробел после «=».То, что я хочу, это:

this is a sentence  123.45
this is a phrase    768.90

Кроме того, если номер второго столбца больше 500, я хотел бы пометить строку в третьем столбце, например:

this is a sentence  123.45  true
this is a phrase    768.90  false

Что я пытался:

Я использовал awk, чтобы получить второй столбец в свой собственный файл, а затем это:

sed -e s/num=//g -i            # Removes just "num="
sed -e s/num= //g -i           # I get an error 
sed -e s/num=\s//g -i          # No effect

1 Ответ

0 голосов
/ 11 июня 2018

Использование awk:

$ awk '
BEGIN { FS=OFS="\t" }                  # set delimiters to tab
{ 
    sub(/num= /,"",$2)                 # remove num= 
    print $0,($2+0>500?"true":"false") # output edited record and true/false
}' file
this is a sentence  123.45  false
this is a phrase    768.90  true
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...