我想从命令行在特定页面打开PDF文档,有点像vim +n [file]
。有没有办法在OSX中使用任何PDF阅读器程序?
答案 0 :(得分:9)
您可以使用-p
或--page-label=PAGE
命令行参数Evince执行此操作,如下所示:
evince -p 5 foo.pdf
答案 1 :(得分:5)
我不断从Julio的回答中得到错误。使用Skim和OSX Mountain Lion(10.8.5)的当前版本1.4.6(80),以下代码适用于我。我认为问题可能是pageNum必须被视为一个整数,但它会被解析为一个字符串。此代码假定您已安装Skim。
gotopage.scpt:
on run argv
set fileName to (item 1 of argv)
set pageNum to (item 2 of argv) as integer
tell application "Skim"
open fileName
tell document 1 to go to page pageNum
activate
end tell
end run
Skim仍需要绝对文件名。因此,您将使用Julio的答案中提到的相同命令运行它。 osascript gotopage.scpt "/full/path/to/doc/mydoc.pdf" 99
答案 2 :(得分:4)
以下方法适用于Skim,它是Preview.app的开源替代品。首先,下载Skim,然后将以下代码保存在文本文件中,并将其命名为“gotopage.scpt”:
on run argv
tell application "Skim"
activate
open (item 1 of argv)
tell document 1
go to page index (item 2 of argv)
end tell
end tell
end run
您现在可以告诉Skim打开某个PDF并通过在终端上写这个来转到第99页:
osascript gotopage.scpt "/full/path/to/doc/mydoc.pdf" 99
您可能希望将上面的行包装到您自己的sh脚本中。另请注意,PDF的路径必须是绝对路径,否则Skim将无法找到该文件。
答案 3 :(得分:3)
也许这会对你有所帮助: http://partners.adobe.com/public/developer/en/acrobat/PDFOpenParameters.pdf
我在这个pdf中找到了第5页的arg page = pagenum,这可能很有用!我没有测试过它!
修改强>
我刚刚在Windows上测试过它(不幸的是我没有Linux)并且它可以工作。在Windows上:
<path to Acrobat Reader.exe> /A "page=2" somePDFFile.pdf
我想这在Linux或OSX中类似。
答案 4 :(得分:-1)
没有。命令行开关特定于每个程序。
答案 5 :(得分:-2)
open -a Preview someFile.pdf