1、写一个Shell脚本

这里通过运行merge.sh可以将同目录下的所有的txt文件合并到all.all。

merge.sh:ls *.txt |
while read file_name;
do# 用.为分隔符只要文件名,去掉文件后缀echo "${file_name%.*}:" >> all.txtcat "$file_name" >> all.txtecho "" >> all.txt
done

效果如下:

2、cat命令

上面的方法中,需要写一个Shell脚本,有些麻烦。其实,可以直接通过cat命令来实现。
默认地,cat命令可以直接接收多个参数,这样,通过重定向可以很方便地合并文件:

使用 cat *.txt > all.txt 需要注意 txt文件是无序的,如果需要按照时间顺序来合并可以使用

cat $(ls -tr *.txt) > all.txt

但是,如果想在各个文件内容的前面加一些说明,就像前面的shell脚本一样,就需要利用cat命令的一个小feature。下面是man cat中的描述:

The cat utility reads files sequentially, writing them to the standard output. The file operands are processed in command-line order. If file
is a single dash (`-') or absent, cat reads from the standard input.
如果cat接收的文件名参数为“-”或者没有,cat命令就从标准输入读取内容。

利用这一点,我们可以在文件参数之间间隔加入“-”。这样,每当读取完一个文件的内容,cat都会从标准输入读取下一个文件的说明信息。结束输入的时候,我们需要按Ctrl+d输入EOF,来结束标准输入读取。如下:

linux shell 合并文本相关推荐

  1. Linux Shell处理文本最常用的工具大盘点

    find文件查找 查找txt和pdf文件  找txt和pdf文件 find . \( -name "*.txt" -o -name "*.pdf" \) -pr ...

  2. linux shell 删除文本 较长行

    目录 方法一: 使用awk命令的length()函数 方法二: 使用grep命令 方法三: 使用sed命令 备注: 有的时候需要对文件执行删除删除操作,这个时候比较常用的会使用vi命令中的dd命令,比 ...

  3. linux shell合并文件命令paste

    usage: paste [-s] [-d delimiters] file ... 1. 合并文件 # 生成demo文件 echo "1\n2\n3\n4\n5\n6" > ...

  4. linux cat 合并文本 中间添加分隔符

    cat file1 file2将合并两个文本文件 要在两者之间添加一些分隔符 file1 file2内容: [root@localhost ~]# cat file1 123 [root@localh ...

  5. linux shell 合并多个文件 并删除重复行

    目录 源文件 合并文件 删除重复行并显示 文件并集&交集&补集 cat a.txt b.txt | sort | uniq > h.txt 源文件 1.首先输入"cd ...

  6. linux fastQC 操作命令,Linux shell合并fastq测序数据/批量fastqc小脚本|merge|multiqc

    合并fastq测序数据 不同泳道的同一个样品测序数据经过质量检查QC后是可以合并的.本例中文件命名情况如下: 示例文件名:83b_S156_L004_R1_001.fastq.gz,其中83b_S15 ...

  7. linux命令合并文本为一行,awk实际应用:文本合并

    请使用awk命令将如下两份文件中名字相同的两行合并起来. [root@localhost ~]# cat 1.txt 韩海林 21岁 海林韩 23岁 韩林海 22岁 林海韩 24岁 [root@loc ...

  8. linux shell 去掉 文本换行符

    文件中每行都以\n结尾,如果要去掉换行符,使用sed命令 [root@host ~]# sed -i 's/\n//g' FileName 或者使用tr命令 [root@host ~]# cat fi ...

  9. linux简单重定向代码,Linux Shell编程(26)——代码块重定向

    像 while, until, 和 for 循环代码块, 甚至 if/then 测试结构的代码块都能做到标准输入的重定向. 即使函数也可以使用这种重定向的格式 .所有的这些依靠代码块结尾的 < ...

最新文章

  1. 关于 @ngrx/Store 下 obj 的扩展问题
  2. 凌琦:物联网——一场正在发生的变革
  3. DIV水平方向居中的几种方法
  4. questasim linux安装包,Ubuntu16.04下Questasim10.7安装(64bit)全攻略
  5. phpstorm—下载安装配置教程
  6. Linux基础7 文件管理类命令
  7. 分享一道阿里Java并发面试题 (详细分析篇)
  8. 解决Xcode升级,导致以前安装的插件失效的办法
  9. windows 下cmd命令行的替换工具cmder
  10. python decorator. decorator_Python中decorator使用实例
  11. loj#2340. 「WC2018」州区划分
  12. C#.Net工作笔记009---c#中Yield Return语法的作用和好处
  13. egg(115)--egg之订单页面筛选,搜索
  14. Scala具体解释---------数组、元组、映射
  15. Yandex安装第三方crx插件的方法
  16. yolov3训练实现火焰检测(pytorch)
  17. Mac蓝牙无法使用怎么办?教你7个修复蓝牙的技巧
  18. 这些愚蠢的事 数据中心管理中要避免
  19. 华为汽车鸿蒙,华为鸿蒙来了!“碰一碰”就可实现设备互联
  20. 创始人如何设置公司股权结构?

热门文章

  1. 分布式任务队列 Celery — 详解工作流
  2. NanoPi NEO Air使用十五:使用V4L2驱动USB摄像头
  3. 使用stm32的ADC得到准确的电压
  4. 51单片机的工作寄存器R0~R7位于内部RAM什么位置
  5. Mac使用自带的屏幕共享实现VNC连接KVM时需要输入密码的问题解决
  6. ASP.NET:为 AJAX 请求添加客户端事件
  7. md加密 16位 32位
  8. div+css命名规范大全
  9. windows环境下如何安装memcached教程
  10. 北京尚学堂|程序员励志名言