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

    技术2022-07-12  79

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

    LinuxWindows开启wsl子系统功能

    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 file.sh

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

    sudo apt update sudo apt install vim

    当安装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 a+x file.sh ./file.sh

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

    Windows

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

    开启wsl子系统功能

    在【开始】右击,选择【应用和功能】, 【需要重启的地方就重启】

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

    【安装完成后】

    搜索【terminal】

    安装。

    完成后,打开Windows terminal

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

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

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

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

    Processed: 0.008, SQL: 9