标题不知道该怎么写简洁明了,吃了文化不高的亏。
事情起因是托尼老湿电脑里发现了蠢沫沫写真,一百多套,这货死不承认自己是lsp,说是给万事屋增加素材。
既然如此,那就拿来分享吧,不要钱的事我最乐意干了。
不过这货下载的100多套每个目录下都有不必要的引流文件,解压缩批量删除后,犯难了。怎么一次性打包所有单独文件夹作为单独压缩包?
高胖子教了我一手,都不需要第三方软件,macOS自己就可以操作,不过需要用到“终端”
把文件夹,也就是子目录,拖入终端,前面输入cd
cd /path/to/your/directory
执行命令:
for i in */; do zip -r "${i%/}.zip" "$i"; done
这个命令的解释:
for i in */;
循环遍历当前目录下的所有子目录。do
和done
之间的命令会对每个子目录执行。zip -r "${i%/}.zip" "$i"
使用zip
命令创建每个子目录的压缩包:-r
选项表示递归压缩子目录及其内容。"${i%/}.zip"
生成压缩包的文件名,即子目录名加上.zip
后缀。${i%/}
用于去掉子目录名末尾的斜杠。"$i"
表示要压缩的子目录路径。
命令执行完成后,每个子目录都会被压缩成一个独立的 ZIP 文件,与子目录同名。
例如,如果你有以下目录结构:
main_directory/
├── subfolder1/
│ ├── file1.txt
│ └── file2.txt
├── subfolder2/
│ ├── file3.txt
│ └── file4.txt
└── subfolder3/
├── file5.txt
└── file6.txt
执行上述命令后,你会得到:
main_directory/
├── subfolder1/
│ ├── file1.txt
│ └── file2.txt
├── subfolder1.zip
├── subfolder2/
│ ├── file3.txt
│ └── file4.txt
├── subfolder2.zip
├── subfolder3/
│ ├── file5.txt
│ └── file6.txt
└── subfolder3.zip
每个子目录都有一个对应的 ZIP 压缩包。
不过蠢沫沫写真每套子目录都是写真集名字,并不能批量用一个名字,那就单独按照每个子目录的名称作为压缩包名称就完事了
for i in */; do zip -r "$i.zip" "$i"; done
这个命令的解释:
for i in */;
循环遍历当前目录下的所有子目录。do
和done
之间的命令会对每个子目录执行。zip -r "$i.zip" "$i"
使用zip
命令创建每个子目录的压缩包:-r
选项表示递归压缩子目录及其内容。"$i.zip"
生成压缩包的文件名,即子目录名加上.zip
后缀。"$i"
表示要压缩的子目录路径。
执行这个命令后,每个子目录都会被压缩成一个与子目录同名的 ZIP 文件。
例如,如果你有以下目录结构:
main_directory/
├── subfolder1/
│ ├── file1.txt
│ └── file2.txt
├── subfolder2/
│ ├── file3.txt
│ └── file4.txt
└── subfolder3/
├── file5.txt
└── file6.txt
执行修改后的命令,你会得到:
main_directory/
├── subfolder1/
│ ├── file1.txt
│ └── file2.txt
├── subfolder1.zip
├── subfolder2/
│ ├── file3.txt
│ └── file4.txt
├── subfolder2.zip
├── subfolder3/
│ ├── file5.txt
│ └── file6.txt
└── subfolder3.zip
每个子目录都有一个与之同名的 ZIP 压缩包。
没有回复内容