Shell脚本中使用for循环和cat命令实现按顺序合并文件
工作目录下面有mydoc1.txt,mydoc2.txt...mydoc41.txt,本来想用sed排列依次取值排序,然后用cat来合并这些文件,发现达不到预期效果,合并令如下所示:
ls-lF*.txt|sed -n'/mydoc1/,/mydoc41/p'|xargs-icat{}>>mynew.txt
发现用其命令达不到预期效果,后来经检查发现,问题应该出现在sed排序上面,它仍然是按照位数来进行排序,并没有智能的按照范围来排序,sed取值命令如下:
ls-lF*.txt|sed-n'/mydoc1/,/mydoc41/p'
命令显示结果如下所示:
-rw-r--r--1rootroot 0Oct1213:38mydoc10.txt -rw-r--r--1rootroot 0Oct1213:38mydoc11.txt -rw-r--r--1rootroot 0Oct1213:38mydoc12.txt -rw-r--r--1rootroot 3Oct1214:48mydoc13.txt -rw-r--r--1rootroot 0Oct1213:38mydoc14.txt -rw-r--r--1rootroot 0Oct1213:38mydoc15.txt -rw-r--r--1rootroot 0Oct1213:38mydoc16.txt -rw-r--r--1rootroot 0Oct1213:38mydoc17.txt -rw-r--r--1rootroot 0Oct1213:38mydoc18.txt -rw-r--r--1rootroot 0Oct1213:38mydoc19.txt -rw-r--r--1rootroot 0Oct1213:38mydoc1.txt -rw-r--r--1rootroot 0Oct1213:38mydoc20.txt -rw-r--r--1rootroot 0Oct1213:38mydoc21.txt -rw-r--r--1rootroot 0Oct1213:38mydoc22.txt -rw-r--r--1rootroot 0Oct1213:38mydoc23.txt -rw-r--r--1rootroot 0Oct1213:38mydoc24.txt -rw-r--r--1rootroot 0Oct1213:38mydoc25.txt -rw-r--r--1rootroot 0Oct1213:38mydoc26.txt -rw-r--r--1rootroot 0Oct1213:38mydoc27.txt -rw-r--r--1rootroot 0Oct1213:38mydoc28.txt -rw-r--r--1rootroot 0Oct1213:38mydoc29.txt -rw-r--r--1rootroot 0Oct1213:38mydoc2.txt -rw-r--r--1rootroot 0Oct1213:38mydoc30.txt -rw-r--r--1rootroot 0Oct1213:38mydoc31.txt -rw-r--r--1rootroot 0Oct1213:38mydoc32.txt -rw-r--r--1rootroot 0Oct1213:38mydoc33.txt -rw-r--r--1rootroot 0Oct1213:38mydoc34.txt -rw-r--r--1rootroot 0Oct1213:38mydoc35.txt -rw-r--r--1rootroot 0Oct1213:38mydoc36.txt -rw-r--r--1rootroot 0Oct1213:38mydoc37.txt -rw-r--r--1rootroot 0Oct1213:38mydoc38.txt -rw-r--r--1rootroot 0Oct1213:38mydoc39.txt -rw-r--r--1rootroot 2Oct1214:48mydoc3.txt -rw-r--r--1rootroot 0Oct1213:38mydoc40.txt -rw-r--r--1rootroot 6Oct1214:48mydoc41.txt
所以用如下命令来实现需求:命令如下所示:
for((i=1;i<=41;i++))doechomydoc$i.txt;done|xargs-icat{}>>mynew.txt
热门推荐
10 五一公司放假祝福语简短
11 追星女孩的祝福语简短
12 给长辈端午祝福语 简短
13 生日祝福语有诗意简短
14 团圆日祝福语简短
15 中秋商务祝福语简短最新
16 温暖文艺简短祝福语短句
17 男孩上学祝福语简短的
18 入住酒店文案祝福语简短