8

我正在尝试使用一个简单的批处理文件打开几个 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)

4

6 回答 6

14

使用start

start acrord32.exe 1.pdf
start acrord32.exe 2.pdf
start acrord32.exe 3.pdf

甚至(正如 Johannes Rössel 在下面的评论中建议的那样):

start 1.pdf
start 2.pdf
start 3.pdf

可能也可以(取决于您的默认 PDF 查看器)。

请注意,在使用start带引号的参数时必须小心,因为以下内容不起作用(第一个带引号的参数被解释为新控制台窗口的标题):

start "1.pdf"

相反,您必须执行以下操作:

start "" "1.pdf"

这是一个令人讨厌的怪癖start,但在这种情况下,您必须有效地提供一个虚拟标题才能正确打开指定的文件(即使标题是不必要的,因为这不会创建新的控制台窗口)。

其他可用批处理命令的列表。

于 2009-03-29T23:23:48.767 回答
2

对我来说,即使没有start命令它也可以工作。我用:

c:\path\to\my.pdf

经常在 cmd.exe 窗口中,它总是打开 Acrobat Reader(我在 Windows 上的默认查看器)。在我编写的通过 Ghostscript 生成 PDF 的批处理文件中,我的最后两行是:

"%ouptutpath%\%outputfile%.pdf"
"%outputpath%\%outputfile%-optimized.pdf"

它会自动在两个不同的阅读器窗口中打开两个生成的 PDF。(我的%outputpath%包含空格,%outputfile%也可能有一些...)

于 2010-08-12T14:04:20.757 回答
0

您是否尝试过 Acrobat Reader 是否允许在命令行上显示更多文件,即。

start acrord32.exe 1.pdf 2.pdf 3.pdf
于 2009-03-29T23:25:35.190 回答
0

谢谢!

使用 start 就可以了。我必须使用 start 的次数与要打开的 pdf 文档的数量一样多。由于某些原因

启动 acrord32.exe 1.pdf 2.pdf 3.pdf

仅打开第一个文档。所以我猜 Acrobat reader 可能不允许在命令行上使用更多文件。

我很感激你的回答。

于 2009-03-30T13:00:51.657 回答
0

感谢以上回答。

我也在下面尝试过,工作正常:

开始 /B excel.exe "D:\我的第一个文件.xlsx" "E:\我的第二个文件.xlsx" "D:\工作文件夹\我的第三个文件.xlsx"

于 2015-05-10T09:31:08.210 回答
0

对于指定目录中的每个 pdf 文件,对该文件使用 start 命令:

for %f ("C:\Users\*.pdf") do start %f

根据微软文档:

For 为一组文件中的每个文件运行指定的命令。

for {%variable|%%variable} in (set) do command [ CommandLineOptions]

于 2017-11-25T03:48:57.853 回答