Преобразование строк в один расширенный столбец

Я нашел свой ответ на :Сделать xargs первым параметром

find. -type d -name "ExampleDir" | xargs -I {}  find {} -type f

0
07.08.2019, 17:20
3 ответа

Замена последовательности пробелов символами новой строки может показаться простейшей.

trможет сделать это(-sздесь ключевое):

$ tr -s ' ' '\n' < file.txt 

Хотя это оставляет пустую первую строку, так как перед 1есть пробел.

или с GNU sed:

sed -E -e 's/^ +//; s/ +$//; s/ +/\n/g' < file.txt 

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

(Для работы \nвам потребуется GNU sed.)

1
28.04.2021, 23:30

С GNU grepвы можете использовать:

grep -Eo '\S+'

Который печатает все последовательности из одного или нескольких(+)не -непробельных символов(\S)по одному в строке.

2
28.04.2021, 23:30

Еще пара вариантов:

  1. с использованием awk, с разделителем полей вывода, установленным на новую строку

    awk '{NF+=0} 1' OFS='\n' file
    
  2. с помощью утилитыrs(r e s hape ), установив количество выходных столбцов на10для строк, чтобы указать «столько, сколько требуется». ")

    rs 0 1 < file
    
2
28.04.2021, 23:30

Теги

Похожие вопросы