Linux tr для преобразования вертикального текста в горизонтальный

Linux tr для преобразования вертикального текста в горизонтальный

Я читал оhttps://stackoverflow.com/questions/39791042/преобразовать-вертикальный-текст-в-горизонтальный-в-оболочке и интересно, trможно ли его использовать отдельно для преобразования вертикального текста в горизонтальный.

user@linux:~$ seq 3
1
2
3
user@linux:~$ 

Я попробовал следующее решение, оно работает, но не идеально.

user@linux:~$ seq 3 | tr -d '\n'
123user@linux:~$ 
user@linux:~$ 

Можно ли использовать его trв одиночку для получения подобного результата?

Желаемый результат

user@linux:~$ seq 3 | tr command here
123
user@linux:~$ 

решение1

Выбирайте то, что подходит именно вам.

$ seq 3 | paste -s -d ''
123
$ seq 3 | tr -d '\n';echo
123
$ seq 3 | awk 1 ORS='';echo
123

решение2

$ seq -s '' 3
123

Это указывает на seqнеобходимость использования пустой строки в качестве разделителя чисел (вместо символа новой строки по умолчанию).

решение3

Попробуй это,

 seq 3 | paste -s -d ''
 123
  • -d, разделители как null
  • -s, печатать последовательно, а не параллельно

решение4

Решением может быть

echo $(seq 3 | tr -d '\n')

Поскольку вы удаляете все новые строки с помощью switch, -d '\n'вам придется добавить последнюю строку снова с помощью какого-то трюка.

Связанный контент