Удалить строки после каждого первого слова в текстовом файле

StackOverflow https://stackoverflow.com/questions/1593871

  •  22-09-2019
  •  | 
  •  

Вопрос

Файл1:

hello   (OPTION1)   123456   123456   123456
world   (OPTION1)   123456   123456   123456
foo     (OPTION1)   123456   123456   123456
bar     (OPTION1)   123456   123456   123456

Как удалить каждую строку после каждого первого слова в текстовом файле File1?

Вероятно, это было бы связано с awk/sed/cat, но я не могу этого понять.Я все еще новичок в редактировании с помощью этих утилит — возможно, мой вопрос будет полезен другим.

Первые слова не являются прогнозируемыми (без подстановочных знаков), каждое первое слово уникально.

Это было полезно?

Решение

awk один вкладыш:

awk '{ print $1 }' < inputfile > outputfile

sed один лайнер:

sed 's/^\([A-Za-z0-9]*\).*/\1/' < inputfile > outpufile

Другие советы

пытаться

awk '{print $1}' filename > filename2

зачем использовать эти инструменты даже после команды вырезания

cut -f1 -d"\t" filename

Вы можете просто обрезать все, начиная с первого пробела:

sed '\s.*$//' <File1

Или просто ради интереса вы можете сделать это с помощью Perl

perl -ne '@a=split;напечатайте "$a[0] "' <файл

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top