我正在使用批处理脚本将具有特定属性的文件名输出到文件.txt
,在本例中是超过 30 天的文件。然后我想压缩或压缩.txt
文件中列出的那些文件。
我该如何做这件事?
答案1
根据 7z 命令行选项:
Usage: 7z <command> [<switches>...] <archive_name> [<file_names>...]
[<@listfiles...>]
由于您已经有了文件列表,因此您可以直接将其@
用于该文件。例如,要将文件压缩到filelist.txt
test.zip 中,请使用以下命令
7z a test.zip @filelist.txt
我试过了,效果很好
答案2
对于 RAR,只需在命令行中通常指定文件列表的位置指定文件列表,但在其前面加上“@”字符。
例如,您有一个需要存档的文件列表,在list-of-files.txt
其中一个文件中
rar a archive-file @list-of-files.txt
答案3
MSDOS 版 RAR
ls.txt内容:
C:\Users\xpacio\Desktop\001\foo.bin
C:\Users\xpacio\Desktop\002\foo.dat
在桌面上存在:
001/foo.bin
001/bar.dat
002/foo.dat
002/bar.bin
命令:
rar a -m5 -ep1 -cu [email protected] result.rar C:\Users\xpacio\Desktop\
该命令会在实际路径下生成一个名为result.rar的rar文件,
rar内容为:
001/FOO.BIN
002/FOO.DAT
参数:
-m5 max level of compression
-ep1 cut the path depth
-cu convert to UPPERCASE
[email protected] listo of files to process