Opening multiple PDF documents using batch file

大兔子大兔子 提交于 2019-12-01 16:43:16
Assaf Lavie

Use start:

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

Or even (as Johannes Rössel suggests in the comment below):

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

Would probably work as well (depending on your default PDF viewer).

Note that when using start you have to be careful when using quoted arguments, as the following won't work (the first quoted argument is interpreted as the title for a new console window):

start "1.pdf"

Instead you'll have to do the following:

start "" "1.pdf"

It's an annoying quirk of start, but you have to effectively supply a dummy title in this case to properly open the specified file (even though the title is unnecessary as this won't create a new console window).

A list of other available batch commands.

For me it works even without the start command. I use:

c:\path\to\my.pdf

in cmd.exe windows frequently, and it always opens Acrobat Reader (my default viewer on Windows). In a batchfile I've written to generate PDF via Ghostscript, my last two lines are:

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

which automatically opens both generated PDFs in two different Reader windows. (My %outputpath% contains spaces, the %outputfile% may also have some...)

Have you tried whether Acrobat Reader allows for more files on the commandline, ie.

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

Thank you!

Using start did the trick. I had to use start as many times as the number of pdf documents I want to open. For some reason

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

opens only the first document. So I guess Acrobat reader might not allow for more files on the command line.

I rally appreciate your answers.

Thanks for the above answers.

I also tried below, working fine:

start /B excel.exe "D:\my first file.xlsx" "E:\my second file.xlsx" "D:\working folder\my third file.xlsx"

For every pdf file in the specified directory, use the start command on that file:

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

As per the Microsoft Docs:

For runs a specified command for each file in a set of files.

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

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!