要求:很N个文件夹,每个文件夹下都是N个文本文件,要把每个文件夹下文件合并成一个文件。
如果windows下,除非使用第三方工具,否则这是个无法想像的工作。更不要说使用文本编辑工具打开、然后手工拼合了。在linux下,简单的使用命令,那是一件相当优雅的事情:如下
$ for f in `ls`; do cd $f; cat `ls` >../${f}.txt ;cd .. ; done
(注:行首的美元符$是bash命令提示符)
这条命令执行完,就把每个文件夹下的文件合并起来,文件名就是 文件夹的名字+.txt
延伸阅读
- 高级Bash脚本编程指南
- linux bash Shell脚本经典之Fork炸弹解析:() { :|:& };:
- 使用stat命令在shell中读取文件状态(修改时间,大小,权限模式,磁盘占用)
- Bash里有用的命令/bash技巧
- 一个使用tar实现对目录作增量备份的bash脚本
- linux bash下find命令之-exec参数多次使用{}处理匹配到文件
- [转]让你提升命令行效率的 Bash 快捷键
- shell编程:认识SHELL
- Shell编程入门:Linux解释器原理
评论关闭。