linux中如何将一行数据转换为一列数据

 

1、测试数据

root@DESKTOP-1N42TVH:/home/test2# ls
test.txt
root@DESKTOP-1N42TVH:/home/test2# cat test.txt
i j k s
root@DESKTOP-1N42TVH:/home/test2# sed -n l test.txt
i j k s$

 

2、转换为一列数据

复制代码
root@DESKTOP-1N42TVH:/home/test2# ls
test.txt
root@DESKTOP-1N42TVH:/home/test2# cat test.txt
i j k s
root@DESKTOP-1N42TVH:/home/test2# sed -n l test.txt
i j k s$
root@DESKTOP-1N42TVH:/home/test2# sed 's/ /\n/g' test.txt       ## sed实现
i
j
k
s
root@DESKTOP-1N42TVH:/home/test2# cat test.txt | tr " " "\n"    ## tr实现
i
j
k
s
root@DESKTOP-1N42TVH:/home/test2# cat test.txt | xargs -n 1     ## xargs实现
i
j
k
s
root@DESKTOP-1N42TVH:/home/test2# awk '{gsub(" ", "\n"); print $0}' test.txt   ## awk实现
i
j
k
s
root@DESKTOP-1N42TVH:/home/test2# awk '{for(i = 1; i <= NF; i++) printf("%s\n", $i)}' test.txt   ## awk实现
i
j
k
s
复制代码

 

复制代码
root@DESKTOP-1N42TVH:/home/test2# ls
test.txt
root@DESKTOP-1N42TVH:/home/test2# cat test.txt
i j k s
root@DESKTOP-1N42TVH:/home/test2# sed -n l test.txt
i j k s$
root@DESKTOP-1N42TVH:/home/test2# awk 'BEGIN{RS = " "}{print $0}' test.txt
i
j
k
s

root@DESKTOP-1N42TVH:/home/test2# awk 'BEGIN{RS = " "}{print $0}' test.txt | head -n -1              ## awk实现
i
j
k
s
root@DESKTOP-1N42TVH:/home/test2# awk 'BEGIN{RS = " "; ORS = "\n"} {print $0}' test.txt
i
j
k
s

root@DESKTOP-1N42TVH:/home/test2# awk 'BEGIN{RS = " "; ORS = "\n"} {print $0}' test.txt | sed '$d'     ## awk实现
i
j
k
s
复制代码

 

posted @   小鲨鱼2018  阅读(1087)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
历史上的今天:
2021-04-26 linux系统中如何将一行数据转换为一列数据
2021-04-26 linux系统中如何把一列数据转换为一行数据
点击右上角即可分享
微信分享提示