佳木斯湛栽影视文化发展公司

主頁 > 知識庫 > Shell腳本中使用for循環(huán)和cat命令實(shí)現(xiàn)按順序合并文件

Shell腳本中使用for循環(huán)和cat命令實(shí)現(xiàn)按順序合并文件

熱門標(biāo)簽:百度競價排名 AI電銷 Linux服務(wù)器 呼叫中心市場需求 服務(wù)外包 鐵路電話系統(tǒng) 地方門戶網(wǎng)站 網(wǎng)站排名優(yōu)化

工作目錄下面有mydoc1.txt,mydoc2.txt...mydoc41.txt,本來想用sed排列依次取值排序,然后用cat來合并這些文件,發(fā)現(xiàn)達(dá)不到預(yù)期效果,合并令如下所示:

復(fù)制代碼 代碼如下:

ls -lF *.txt | sed  -n '/mydoc1/,/mydoc41/p' | xargs -i cat {}> >mynew.txt

發(fā)現(xiàn)用其命令達(dá)不到預(yù)期效果,后來經(jīng)檢查發(fā)現(xiàn),問題應(yīng)該出現(xiàn)在sed排序上面,它仍然是按照位數(shù)來進(jìn)行排序,并沒有智能的按照范圍來排序,sed取值命令如下:
復(fù)制代碼 代碼如下:

ls-lF *.txt | sed-n '/mydoc1/,/mydoc41/p'

命令顯示結(jié)果如下所示:
復(fù)制代碼 代碼如下:

-rw-r--r-- 1 root root  0 Oct 12 13:38 mydoc10.txt
-rw-r--r-- 1 root root  0 Oct 12 13:38 mydoc11.txt
-rw-r--r-- 1 root root  0 Oct 12 13:38 mydoc12.txt
-rw-r--r-- 1 root root  3 Oct 12 14:48 mydoc13.txt
-rw-r--r-- 1 root root  0 Oct 12 13:38 mydoc14.txt
-rw-r--r-- 1 root root  0 Oct 12 13:38 mydoc15.txt
-rw-r--r-- 1 root root  0 Oct 12 13:38 mydoc16.txt
-rw-r--r-- 1 root root  0 Oct 12 13:38 mydoc17.txt
-rw-r--r-- 1 root root  0 Oct 12 13:38 mydoc18.txt
-rw-r--r-- 1 root root  0 Oct 12 13:38 mydoc19.txt
-rw-r--r-- 1 root root  0 Oct 12 13:38 mydoc1.txt
-rw-r--r-- 1 root root  0 Oct 12 13:38 mydoc20.txt
-rw-r--r-- 1 root root  0 Oct 12 13:38 mydoc21.txt
-rw-r--r-- 1 root root  0 Oct 12 13:38 mydoc22.txt
-rw-r--r-- 1 root root  0 Oct 12 13:38 mydoc23.txt
-rw-r--r-- 1 root root  0 Oct 12 13:38 mydoc24.txt
-rw-r--r-- 1 root root  0 Oct 12 13:38 mydoc25.txt
-rw-r--r-- 1 root root  0 Oct 12 13:38 mydoc26.txt
-rw-r--r-- 1 root root  0 Oct 12 13:38 mydoc27.txt
-rw-r--r-- 1 root root  0 Oct 12 13:38 mydoc28.txt
-rw-r--r-- 1 root root  0 Oct 12 13:38 mydoc29.txt
-rw-r--r-- 1 root root  0 Oct 12 13:38 mydoc2.txt
-rw-r--r-- 1 root root  0 Oct 12 13:38 mydoc30.txt
-rw-r--r-- 1 root root  0 Oct 12 13:38 mydoc31.txt
-rw-r--r-- 1 root root  0 Oct 12 13:38 mydoc32.txt
-rw-r--r-- 1 root root  0 Oct 12 13:38 mydoc33.txt
-rw-r--r-- 1 root root  0 Oct 12 13:38 mydoc34.txt
-rw-r--r-- 1 root root  0 Oct 12 13:38 mydoc35.txt
-rw-r--r-- 1 root root  0 Oct 12 13:38 mydoc36.txt
-rw-r--r-- 1 root root  0 Oct 12 13:38 mydoc37.txt
-rw-r--r-- 1 root root  0 Oct 12 13:38 mydoc38.txt
-rw-r--r-- 1 root root  0 Oct 12 13:38 mydoc39.txt
-rw-r--r-- 1 root root  2 Oct 12 14:48 mydoc3.txt
-rw-r--r-- 1 root root  0 Oct 12 13:38 mydoc40.txt
-rw-r--r-- 1 root root  6 Oct 12 14:48 mydoc41.txt

所以用如下命令來實(shí)現(xiàn)需求:命令如下所示:
復(fù)制代碼 代碼如下:

for ((i=1;i=41;i++))do echo mydoc$i.txt;done | xargs -i cat {} >> mynew.txt

您可能感興趣的文章:
  • 對Linux下shell編程之for循環(huán)的實(shí)例講解
  • linux shell 中數(shù)組的定義和for循環(huán)遍歷的方法
  • Linux shell 實(shí)現(xiàn)用for循環(huán)100次的方法
  • Shell中的for和while循環(huán)詳細(xì)總結(jié)
  • Shell中的for循環(huán)總結(jié)
  • Shell腳本for循環(huán)語句簡明教程
  • shell for循環(huán)與數(shù)組應(yīng)用介紹
  • 基于Shell中for循環(huán)的幾個常用寫法分享

標(biāo)簽:銅川 湖南 湘潭 仙桃 崇左 衡水 蘭州 黃山

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Shell腳本中使用for循環(huán)和cat命令實(shí)現(xiàn)按順序合并文件》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    平陆县| 辛集市| 巴林左旗| 和静县| 疏附县| 昌吉市| 乡城县| 连城县| 保德县| 绍兴市| 维西| 河间市| 紫云| 张家界市| 玉田县| 宣威市| 嫩江县| 长葛市| 虹口区| 儋州市| 黑水县| 青海省| 勐海县| 九龙城区| 侯马市| 南城县| 五河县| 东海县| 贡山| 永仁县| 布拖县| 樟树市| 廊坊市| 台江县| 汝州市| 汪清县| 岳阳县| 斗六市| 新郑市| 邵阳县| 汶川县|