我如何重定向以下命令zip 1.zip file.txt的输入我希望从file.txt文件中删除名称
我试图做zip 1.zip< file.txt并没有用,我在windows下工作。
感谢
答案 0 :(得分:4)
在zip中使用 - @选项。
type zip - @ 1.zip< file.txt
通过输入zip -h 找到的zip帮助中的
Copyright (C) 1990-1996 Mark Adler, Richard B. Wales, Jean-loup Gailly
Onno van der Linden and Kai Uwe Rommel. Type 'zip -L' for the software License.
Zip 2.1 (April 27th 1996). Usage:
zip [-options] [-b path] [-t mmddyy] [-n suffixes] [zipfile list] [-xi list]
The default action is to add or replace zipfile entries from list, which
can include the special name - to compress standard input.
If zipfile and list are omitted, zip compresses stdin to stdout.
-f freshen: only changed files -u update: only changed or new files
-d delete entries in zipfile -m move into zipfile (delete files)
-k force MSDOS (8+3) file names -g allow growing existing zipfile
-r recurse into directories -j junk (don't record) directory names
-0 store only -l convert LF to CR LF (-ll CR LF to LF)
-1 compress faster -9 compress better
-q quiet operation -v verbose operation/print version info
-c add one-line comments -z add zipfile comment
-b use "path" for temp file -t only do files after "mmddyy"
-@ read names from stdin -o make zipfile as old as latest entry
-x exclude the following names -i include only the following names
-F fix zipfile (-FF try harder) -D do not add directory entries
-A adjust self-extracting exe -J junk zip file prefix (unzipsfx)
-T test zipfile integrity -X eXclude eXtra file attributes
-$ include volume label -S include system and hidden files
-h show this help -n don't compress these suffixes
答案 1 :(得分:0)
您可以使用FOR命令从file.txt获取输入,并为文件中的每一行运行命令。这不是你想要的,但它让你更接近。
例如,
for /f %L in (file.txt) do echo %L
将分别回显文件中的每一行。
您可以使用它来构建一个可以执行所需操作的命令行。像这样:
SETLOCAL ENABLEDELAYEDEXPANSION
set filelist=
for /F %%L IN (data.txt) do set filelist=!filelist! %%L
zip.exe zipfile.zip %filelist%
ENDLOCAL