首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用7za单独存档顶级子文件夹?

如何使用7za单独存档顶级子文件夹?
EN

Stack Overflow用户
提问于 2014-07-02 18:06:50
回答 1查看 104关注 0票数 1

我有一个批处理文件脚本来将7zip应用于子文件夹:

代码语言:javascript
复制
FOR /D %%i IN (*.*) DO 7za a -v1G -y -t7z -mx=3 "d:\backuptemp\tools\%%i.7za" "%%i\"

如果我在"tools“文件夹中运行此操作,它会备份"tools”中的所有子文件夹,并将它们作为7zip存档放在"backuptemp\tools“中。

但是,当我使用以下代码时,我想要做的是能够在tools文件夹之外运行这个程序:

代码语言:javascript
复制
FOR /D %%i IN (d:\tools\*.*) DO 7za a -v1G -y -t7z -mx=3 "d:\backuptemp\tools\%%i.7za" "%%i\"

它尝试创建一个名为d:\backuptemp\d:\tools\%nameoffolder%.7za的文件夹,但是失败,表示文件名语法不正确。

为了能够在"tools“文件夹之外使用这个批处理文件,我需要更改语法中的什么?

此外,如果可能的话,我希望能够将日期附加到文件名的末尾。假设我在“工具”中有一个名为“修补程序”的文件夹,我如何使它成为"Patches_20140207.7za“呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-07-02 18:34:42

这一变化应有助于:

该代码的前四行将在XP Pro和更高版本中为您提供可靠的YY、DD、MM、YYYY、HH、Min、Sec变量。

代码语言:javascript
复制
@echo off
for /f "tokens=2 delims==" %%a in ('wmic OS Get localdatetime /value') do set "dt=%%a"
set "YY=%dt:~2,2%" & set "YYYY=%dt:~0,4%" & set "MM=%dt:~4,2%" & set "DD=%dt:~6,2%"
set "HH=%dt:~8,2%" & set "Min=%dt:~10,2%" & set "Sec=%dt:~12,2%"

set "datestamp=%YYYY%%MM%%DD%" & set "timestamp=%HH%%Min%%Sec%"
set "fullstamp=%YYYY%-%MM%-%DD%_%HH%-%Min%-%Sec%"


FOR /D %%i IN (d:\tools\*.*) DO 7za a -v1G -y -t7z -mx=3 "d:\backuptemp\tools\%%~nxi_%datestamp%.7za" "%%i\"
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24538084

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档