跳至主要内容

Bash遍历文件

非常简单的学习笔记,任务也很简单。

我在网上下载了一个字幕文件合集,字幕格式非常齐全,ass和srt还有中英繁简的单独和混排。

我要做的是遍历整个目录,然后把我需要的中英.srt字幕筛选出来(万幸,字幕文件命名是很规范的,因此不需要检测文件内容,如果检测文件内容的话,那就麻烦了)。

废话不多,上代码~

dirs=`ls -d */`
for dir in $dirs
do
        for f in `ls $dir`
        do
                case "$f" in
                        *简体\&英文.srt)
                        cp ./$dir/$f ~/;;
                        *)
                        continue;;
                esac
        done
done

一些说明:

1. 由于有文件夹嵌套,所以dirs保存的是所有目录的名字,其中-d参数保证只是保存名字;
2. $f中是遍历所有的文件,其中&因为有特殊含义,因此需要转义;(可以参考:http://www.tldp.org/LDP/abs/html/escapingsection.html)
3. 用于判断分析文件名,虽然可以用grep,但是语法麻烦,case很好用;

最后惯例是“持续工作,持续学习,持续优化”,美化一下我的VIM,添加颜色:syntax on
如图

dirs=`ls -d */`
for dir in $dirs
do
        for f in `ls $dir`
        do
                case "$f" in
                        *简体\&英文.srt)
                        cp ./$dir/$f ~/;;
                        *)
                        continue;;
                esac
        done
done
完工。




评论

此博客中的热门博文

开始了我的kaggle学习

 感谢我的妻子来到我的生活,她真的是非常有智慧的女性,我感觉治愈了有点点在低谷的我。 在她的鼓励下,我重新开始看kaggle,居然顺利学完了所有的入门课程,现在开始关注一些比赛。 我的工作推进虽然缓慢,不过我内心平静了很多,感觉可以慢慢推进做一些事情了,虽然现在,偶尔还是很困并且容易劳累,也许我该健身一下。 又是个碎碎念的博客呢。 生活的中的细节多了,我目前也能静下来了,和形而上学和解了,未来也许可以写出来不错的文章。 放张图记录一下最近的生活吧~

如果更早遇见是不是会好一点呢?

读完了《推理竞技场》。 跟自己说着很久没有看书了,然后抽了两个半午休看完了这本书。我自己对这本书评价一般,虽然读起来确实流畅,也多少有些海猫的影子,不过,时间不太对吧。 我为什么不去直接读《竹林中》呢?我也许应该再去看看干货更多的书籍,而不是把很多哲学思想再加工的半成品推理小说? 看完了这本书,让我有点不太想打开下一本书,也就是收获没有那么多。 好多东西堆在我眼前,可以推进我的业余项目、可以把工作精进搞好、可以去看纸牌圣经练习手法、可以学习视频制作(对了安装了fcpx,可以有时间学习视频编辑了)、可以去把之前买的狗头人桌游打开、可以尝试去运动…… 貌似又有了那种感觉,我拥有那么多东西,可是却没有办法很好的享受这些,如果我能静下心来,明明可以创造出很多很多愉快的记忆和成果的。 于此同时,我的本职工作,其实内容很简单,上传下达,文件检查,感觉还是没有把状态管理好,目前做的这些工作有点消耗精力。 静下心来,静下心来,平静的心情来感受生活是我自己目前需要做的。

在centos7上,从零开始部署一个http服务

#从零开始建立一个php应用的教程 建立一个http服务的完整流程,这个流程可以用来指导系统的安装部署。 1. centos7 1.1 安装 在centos官网下载系统镜像并完成安装过程,安装过程根据安装向导进行。 1.2 配置 建立用户 useradd -d /home/username username -s /bin/bash -g wheel 添加用户组 添加密码 passwd username 添加权限 echo "username ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers ssh服务的配置依据个人习惯; 建议安装ntp服务;  2. php 2.1 安装 添加软件源  sudo yum install epel-release sudo yum -y install https://rpms.remirepo.net/enterprise/remi-release-7.rpm 安装remi源提供的版本 sudo yum install php74  php74-php-cli php74-php-fpm php74-php-pgsql php74-php-zip php74-php-devel php74-php-gd php74-php-mcrypt php74-php-mbstring php74-php-curl php74-php-xml php74-php-pear php74-php-bcmath php74-php-json 切换最新版本的php为默认版本 scl enable php72 bash 执行检查命令,检查是否安装成功 php -v php -m php -r "phpinfo();" 2.2配置 fpm服务需要配置,配置文件如下 /etc/opt/remi/php74/php-fpm.d/www.conf 其中需要修改的内容为 user = nginx group = nginx listen = /var/opt/remi/php72/run/php-fpm/php72-fpm.sock listen.owner = nginx listen.group = nginx listen.mode = 0660 修改好之后启动fpm服务,检查服务...