如何使用cmd archive选项读取源文件的名称并将其作为存档名称发送到7zip中。
现在我用:
7z a -t7z V:\archive.7z V:\Backup\*.bak
我想检查V:\Backup
中的bak名称文件(总共只有1个文件)并将其作为archive.7z
发送 - 例如,如果V:\Backup
中有1个名为{{1}的文件我想命名归档"20131028_1100.bak"
答案 0 :(得分:0)
你需要一个执行FOR命令的.bat脚本,如下所示: for(%)中的%% X执行“7zip \ App \ 7-Zip \ 7z.exe”a“%% ~nX.zip”“%% X”
%% X将捕获您将执行脚本的文件夹中包含的每个文件的文件名(在这种情况下为V:\ Backup \并且只处理1个文件),因此%% ~nX.zip将拿这个文件名
答案 1 :(得分:0)
7zip将源文件名保留为存档
正如“ capa”所说,有必要使用shell命令,因为7zip在这种情况下不提供命令。 以下编辑的命令可用于与* .bak文件一起使用,并且适用于“ 7z”压缩扩展名。在压缩率上,它比“ zip”格式更有效。
7z格式 对于%% I IN( .bak),请执行“ c:\ Program Files \ 7-Zip \ 7z.exe” a -t7z %%〜nI.7z %%〜nI。
zip格式 对于%% I IN( .bak),请执行“ c:\ Program Files \ 7-Zip \ 7z.exe” a -tZip %%〜nI.zip %%〜nI。
在以上命令中,.bak之前的“ *”符号未出现。请添加! 还要在每个命令的末尾添加“ *”。
*在* .bak文件目录上创建一个“蝙蝠”文件,例如“ compressbak.bat”,复制并粘贴首选命令(7z或zip),将内容“保存”在“ compressbak.bat”上!这将在保存* .bak文件的同一文件夹中创建* .bak文件的命名档案。另外,如果您在Windows x64上运行并且具有x86版本的7-Zip,则必须遵循正确的路径才能调用7z.exe文件。 “ c:\ Program Files(x86)\ 7-Zip \ 7z.exe”
希望对您有帮助!