在文件夹下images\,我有以下文件夹:
Usa\Italy\Japan\等等..
我想要一个.zip为每个文件夹创建一个的脚本,所以我有usa.zip, italy.zip, japan.zip.
我怎样才能做到这一点?
par*_*oid 11
我假设这是 Windows,因为您使用的是反斜杠。
获取7za.exe(7-zip的命令行版本)并将其放入您的%PATH%.
然后在您的Images\目录中运行它:
for /f "tokens=* usebackq" %G in (`dir /b /a:d "%cd%"`) do 7za a -r -tzip "%~G.zip" "%~G"
Run Code Online (Sandbox Code Playgroud)
或者在批处理脚本中:
for /f "tokens=* usebackq" %%G in (`dir /b /a:d "%cd%"`) do 7za a -r -tzip "%%~G.zip" "%%~G"
Run Code Online (Sandbox Code Playgroud)
小智 9
假设你在 Linux 上,你可以使用这样的 Bash 脚本:
#!/bin/bash
IFS=$'\n'
for f in $(find "$1" -mindepth 1 -maxdepth 1 -type d ); do
zip -r "$f" "$f"
done
Run Code Online (Sandbox Code Playgroud)
该脚本将第一个参数作为文件夹,在本例中为图像,并递归一级深度以获取所有文件夹(美国、意大利和日本)并将它们压缩到同一位置。
它不会删除旧的 zip 文件或源文件夹。Zip 足够智能,可以检测现有的 zip 文件并在再次运行时更新它们。但是,如果您删除源文件夹中的文件,则 zip 文件中的文件不会被删除。您可以通过事先删除现有文件来规避此行为。
| 归档时间: |
|
| 查看次数: |
17417 次 |
| 最近记录: |