我正在尝试使用简单的批处理文件打开多个PDF文档:
ECHO OFF
CLS
cd Program Files\Adobe\Reader 9.0\Reader
Acrord32.exe C:\Users\BW1.pdf
Acrord32.exe C:\Users\BW2.pdf
Acrord32.exe C:\Users\BW3.pdf
Acrord32.exe C:\Users\BW4.pdf
Acrord32.exe C:\Users\BW5.pdf
Acrord32.exe C:\Users\BW6.pdf
EXIT
上述批处理文件仅打开第一个PDF,然后等待我关闭它以打开下一个PDF文件。如何同时打开所有PDF文档? (比如去Acrobat Reader,file-> Open-> xx.pdf)
答案 0 :(得分:11)
使用start
:
start acrord32.exe 1.pdf
start acrord32.exe 2.pdf
start acrord32.exe 3.pdf
甚至(正如JohannesRössel在下面的评论中所建议的那样):
start 1.pdf
start 2.pdf
start 3.pdf
可能也会起作用(取决于您的默认PDF查看器)。
请注意,使用start
时,在使用带引号的参数时必须小心,因为以下内容不起作用(第一个引用的参数被解释为新控制台窗口的标题):
start "1.pdf"
相反,您必须执行以下操作:
start "" "1.pdf"
这是start
的一个恼人的怪癖,但在这种情况下你必须有效地提供一个虚拟标题来正确打开指定的文件(即使标题是不必要的,因为这不会创建一个新的控制台窗口)
答案 1 :(得分:2)
对我而言,即使没有start
命令也能正常工作。我用:
c:\path\to\my.pdf
经常在cmd.exe窗口中,它总是打开Acrobat Reader(Windows上的默认查看器)。在我编写的批处理文件中,通过Ghostscript生成PDF,我的最后两行是:
"%ouptutpath%\%outputfile%.pdf"
"%outputpath%\%outputfile%-optimized.pdf"
可自动在两个不同的阅读器窗口中打开两个生成的PDF。 (我的%outputpath%
包含空格,%outputfile%
也可能包含空格......)
答案 2 :(得分:0)
您是否尝试过Acrobat Reader是否允许在命令行上添加更多文件,即
start acrord32.exe 1.pdf 2.pdf 3.pdf
答案 3 :(得分:0)
谢谢!
使用start就可以了。我必须使用start作为我想要打开的pdf文档的数量。出于某种原因
启动acrord32.exe 1.pdf 2.pdf 3.pdf
仅打开第一个文档。所以我猜Acrobat reader可能不允许在命令行上添加更多文件。
我很感激你的回答。
答案 4 :(得分:0)
感谢您的上述答案。
我也在下面尝试过,工作正常:
start / B excel.exe" D:\我的第一个文件.xlsx" " E:\我的第二个文件.xlsx" " D:\ working folder \ my third file.xlsx"
答案 5 :(得分:0)
对于指定目录中的每个pdf文件,请对该文件使用start命令:
for %f ("C:\Users\*.pdf") do start %f
根据Microsoft Docs:
用于为一组文件中的每个文件运行指定的命令。
for {%variable|%%variable} in (set) do command [ CommandLineOptions]