Shell

將換行符添加到行

  • October 11, 2018

我想提取第二個欄位並將其轉置為一行

cat > temp1
1   73
2   74
3   75

我的方法:

cut -f2 temp1 | tr '\n'  '\t' > temp2

結果 :

temp2
73  74  75  

可以理解的是,該行的右端有一個製表符分隔符,但缺少一個換行符。是否有一個簡單的單線來解決這個問題?

使用paste代替tr

$ cut -f2 temp1 | paste -s
73  74  75

驗證不可見的空白

$ cut -f2 temp1 | paste -s | od -c
0000000   7   3  \t   7   4  \t   7   5  \n
0000011
 cat file | cut -d' ' -f2 | xargs -n3
 73 74 75

並根據*@glenn jackman驗證不可見的空格*

cat file | cut -d' ' -f4 | xargs -n3 |  od -c

0000000   7   3       7   4       7   5  \n
0000011

引用自:https://unix.stackexchange.com/questions/474646