Linux 中实现文本按照指定的列数输出

 

001、生成测试数据

[root@PC1 test]# ls
[root@PC1 test]# touch {001..100}.txt          ## 生成测试数据
[root@PC1 test]# ls
001.txt  009.txt  017.txt  025.txt  033.txt  041.txt  049.txt  057.txt  065.txt  073.txt  081.txt  089.txt  097.txt
002.txt  010.txt  018.txt  026.txt  034.txt  042.txt  050.txt  058.txt  066.txt  074.txt  082.txt  090.txt  098.txt
003.txt  011.txt  019.txt  027.txt  035.txt  043.txt  051.txt  059.txt  067.txt  075.txt  083.txt  091.txt  099.txt
004.txt  012.txt  020.txt  028.txt  036.txt  044.txt  052.txt  060.txt  068.txt  076.txt  084.txt  092.txt  100.txt
005.txt  013.txt  021.txt  029.txt  037.txt  045.txt  053.txt  061.txt  069.txt  077.txt  085.txt  093.txt
006.txt  014.txt  022.txt  030.txt  038.txt  046.txt  054.txt  062.txt  070.txt  078.txt  086.txt  094.txt
007.txt  015.txt  023.txt  031.txt  039.txt  047.txt  055.txt  063.txt  071.txt  079.txt  087.txt  095.txt
008.txt  016.txt  024.txt  032.txt  040.txt  048.txt  056.txt  064.txt  072.txt  080.txt  088.txt  096.txt

 

002、paste的命令实现按照指定列数输出

[root@PC1 test]# ls | paste - | head              ## 单列输出
001.txt
002.txt
003.txt
004.txt
005.txt
006.txt
007.txt
008.txt
009.txt
010.txt
[root@PC1 test]# ls | paste - - | head             ## 双列输出
001.txt 002.txt
003.txt 004.txt
005.txt 006.txt
007.txt 008.txt
009.txt 010.txt
011.txt 012.txt
013.txt 014.txt
015.txt 016.txt
017.txt 018.txt
019.txt 020.txt
[root@PC1 test]# ls | paste - - - | head           ## 三列输出 
001.txt 002.txt 003.txt
004.txt 005.txt 006.txt
007.txt 008.txt 009.txt
010.txt 011.txt 012.txt
013.txt 014.txt 015.txt
016.txt 017.txt 018.txt
019.txt 020.txt 021.txt
022.txt 023.txt 024.txt
025.txt 026.txt 027.txt
028.txt 029.txt 030.txt

 。

 

003、xargs命令实现

[root@PC1 test]# ls
001.txt  009.txt  017.txt  025.txt  033.txt  041.txt  049.txt  057.txt  065.txt  073.txt  081.txt  089.txt  097.txt
002.txt  010.txt  018.txt  026.txt  034.txt  042.txt  050.txt  058.txt  066.txt  074.txt  082.txt  090.txt  098.txt
003.txt  011.txt  019.txt  027.txt  035.txt  043.txt  051.txt  059.txt  067.txt  075.txt  083.txt  091.txt  099.txt
004.txt  012.txt  020.txt  028.txt  036.txt  044.txt  052.txt  060.txt  068.txt  076.txt  084.txt  092.txt  100.txt
005.txt  013.txt  021.txt  029.txt  037.txt  045.txt  053.txt  061.txt  069.txt  077.txt  085.txt  093.txt
006.txt  014.txt  022.txt  030.txt  038.txt  046.txt  054.txt  062.txt  070.txt  078.txt  086.txt  094.txt
007.txt  015.txt  023.txt  031.txt  039.txt  047.txt  055.txt  063.txt  071.txt  079.txt  087.txt  095.txt
008.txt  016.txt  024.txt  032.txt  040.txt  048.txt  056.txt  064.txt  072.txt  080.txt  088.txt  096.txt
[root@PC1 test]# ls | xargs -n 10           ## 按照10列输出
001.txt 002.txt 003.txt 004.txt 005.txt 006.txt 007.txt 008.txt 009.txt 010.txt
011.txt 012.txt 013.txt 014.txt 015.txt 016.txt 017.txt 018.txt 019.txt 020.txt
021.txt 022.txt 023.txt 024.txt 025.txt 026.txt 027.txt 028.txt 029.txt 030.txt
031.txt 032.txt 033.txt 034.txt 035.txt 036.txt 037.txt 038.txt 039.txt 040.txt
041.txt 042.txt 043.txt 044.txt 045.txt 046.txt 047.txt 048.txt 049.txt 050.txt
051.txt 052.txt 053.txt 054.txt 055.txt 056.txt 057.txt 058.txt 059.txt 060.txt
061.txt 062.txt 063.txt 064.txt 065.txt 066.txt 067.txt 068.txt 069.txt 070.txt
071.txt 072.txt 073.txt 074.txt 075.txt 076.txt 077.txt 078.txt 079.txt 080.txt
081.txt 082.txt 083.txt 084.txt 085.txt 086.txt 087.txt 088.txt 089.txt 090.txt
091.txt 092.txt 093.txt 094.txt 095.txt 096.txt 097.txt 098.txt 099.txt 100.txt

 。

 

004、awk实现

[root@PC1 test]# ls
001.txt  009.txt  017.txt  025.txt  033.txt  041.txt  049.txt  057.txt  065.txt  073.txt  081.txt  089.txt  097.txt
002.txt  010.txt  018.txt  026.txt  034.txt  042.txt  050.txt  058.txt  066.txt  074.txt  082.txt  090.txt  098.txt
003.txt  011.txt  019.txt  027.txt  035.txt  043.txt  051.txt  059.txt  067.txt  075.txt  083.txt  091.txt  099.txt
004.txt  012.txt  020.txt  028.txt  036.txt  044.txt  052.txt  060.txt  068.txt  076.txt  084.txt  092.txt  100.txt
005.txt  013.txt  021.txt  029.txt  037.txt  045.txt  053.txt  061.txt  069.txt  077.txt  085.txt  093.txt
006.txt  014.txt  022.txt  030.txt  038.txt  046.txt  054.txt  062.txt  070.txt  078.txt  086.txt  094.txt
007.txt  015.txt  023.txt  031.txt  039.txt  047.txt  055.txt  063.txt  071.txt  079.txt  087.txt  095.txt
008.txt  016.txt  024.txt  032.txt  040.txt  048.txt  056.txt  064.txt  072.txt  080.txt  088.txt  096.txt
[root@PC1 test]# ls | awk '{if(NR % 10 == 0) {print $0} else {printf("%s\t", $0)}}'      ## 按照10列输出
001.txt 002.txt 003.txt 004.txt 005.txt 006.txt 007.txt 008.txt 009.txt 010.txt
011.txt 012.txt 013.txt 014.txt 015.txt 016.txt 017.txt 018.txt 019.txt 020.txt
021.txt 022.txt 023.txt 024.txt 025.txt 026.txt 027.txt 028.txt 029.txt 030.txt
031.txt 032.txt 033.txt 034.txt 035.txt 036.txt 037.txt 038.txt 039.txt 040.txt
041.txt 042.txt 043.txt 044.txt 045.txt 046.txt 047.txt 048.txt 049.txt 050.txt
051.txt 052.txt 053.txt 054.txt 055.txt 056.txt 057.txt 058.txt 059.txt 060.txt
061.txt 062.txt 063.txt 064.txt 065.txt 066.txt 067.txt 068.txt 069.txt 070.txt
071.txt 072.txt 073.txt 074.txt 075.txt 076.txt 077.txt 078.txt 079.txt 080.txt
081.txt 082.txt 083.txt 084.txt 085.txt 086.txt 087.txt 088.txt 089.txt 090.txt
091.txt 092.txt 093.txt 094.txt 095.txt 096.txt 097.txt 098.txt 099.txt 100.txt

 。

 

posted @ 2025-05-08 23:10  小鲨鱼2018  阅读(24)  评论(0)    收藏  举报