Linux命令之grep/sed/awk等行轉列

JouyPub發表於2018-08-07

行轉列
樣例檔案如下

cat file.txt
a b c
d e f
g h i
  1. cat file.txt |xargs -n1

  2. xargs -n 1 < file.txt

  3. tr " " "
    " < file.txt

4、sed `s/ /
/g` file.txt

   此命令在Linux上執行正常,在Mac上執行無效,原因是因為Mac上的sed是BSD版本,Linux上的是Gnu版本,在Mac上需要使用sed -e `s/ /`$`
/g` file.txt

5、sed `s/ /
/g` file.txt

   同上

7、awk `{for(i=1;i<=NF;i++)print $i}` file.txt

8、awk -vOFS="
" `$1=$1` file.txt

   Linux上正常,Mac上無效

9、awk `{OFS=RS}NF=NF` file.txt
   Linux上正常,Mac上無效

列轉行

樣例檔案如下

cat file.txt
a
b
c
d
e
f

1、cat file.txt | tr "
" ","


相關文章