从大量文件中找到指定文件并执行指定文件操作

Linux

应邀对一些文件进行处理,如图所示

从大量文件中找到指定文件并执行指定文件操作_查找文件


目录结构就是​​a-1.bmp, a-2.bmp, ... , a-49.bmp​​,其他字母同理,前面的索引从a-z,另外还有0.

要求是取出所有的2号索引为​​1,2,3,4,5,6​​的文件。

Linux有个极强大的命令​​find​​,不仅可以随意的查找文件,还能接着进行需要的文件操作,对于这个要求,只需要编写简单的脚本:

cd TUPIA # TUPIA为文件目录,假设TUPIA就在home目录
mkdir temp
sudo vi

【对vim不熟悉的,这里做一个简单的说明:】
首先,对于Ubuntu系统,默认是安装的vi,而不是vim,所以我们需要手动安一下vim。

sudo apt update
sudo apt install

当安装vim后,vi命令就会链接到vim,所以使用vi命令就是在使用vim。

输入vi file.sh(也可以用a.sh, b.sh及任何你喜欢的而且符合命名规则的名字,但是.sh是必须要有的)后,​​需要先按【i】键来启动【插入】功能,否则是无法输入东西的​​​,输入完成后,​​需要先按【ESC】来跳出输入功能,然后再输入【:wq】来保存​​。

在文件中写入以下内容:

#!/bin/bash

for index in 1 2 3 4 5 6
do
find . -iname "*-${index}.bmp" -type f -exec cp {} ./temp \;
done

赋予file.sh运行权限并运行

chmod

进入temp文件夹,可以看到文件已经操作成功。

Windows

windows用户,本文章将采用WSL的方式来执行,而不是bat脚本。

开启wsl子系统功能

在【开始】​​右击​​,选择【应用和功能】,

从大量文件中找到指定文件并执行指定文件操作_linux find_02

从大量文件中找到指定文件并执行指定文件操作_查找文件_03


从大量文件中找到指定文件并执行指定文件操作_图片预处理_04


【需要重启的地方就重启】

从大量文件中找到指定文件并执行指定文件操作_linux find_05


搜索【Ubuntu】

从大量文件中找到指定文件并执行指定文件操作_linux find_06


【安装Ubuntu18.04】,第一个Ubuntu是20.04,并且会持续更新,为了指令的稳定,选择18即可,10年或5年的支持期。

【安装完成后】

搜索【terminal】

从大量文件中找到指定文件并执行指定文件操作_文件预处理_07


安装。

完成后,打开Windows terminal

从大量文件中找到指定文件并执行指定文件操作_查找文件_08

从大量文件中找到指定文件并执行指定文件操作_查找文件_09


这时候,就可以像使用Linux一样使用这个终端,这个就是一个Linux。

这个终端默认的路径是​​C:\Users\Eric​​,也就是你的用户目录,在桌面显示的就是这个文件夹。

从大量文件中找到指定文件并执行指定文件操作_linux find_10

比如我们把TUPIA文件夹放在桌面上,那么在终端中的操作就是:

【剩下的操作大部分和Linux中一样,请跳转到上文阅读上文Linux部分】

从大量文件中找到指定文件并执行指定文件操作_文件操作_11


从大量文件中找到指定文件并执行指定文件操作_文件预处理_12