我想从命令行打开特定页面上的PDF文档,有点像vim +n [file]
。有没有办法在OSX中用任何PDF阅读器程序做到这一点?
发布于 2010-01-13 23:16:18
您可以使用-p
或--page-label=PAGE
命令行参数对Evince执行此操作,如下所示:
evince -p 5 foo.pdf
发布于 2013-11-07 06:06:36
我一直从胡里奥的回答中得到错误。使用当前版本1.4.6 (80)的Skim和OSX Mountain Lion (10.8.5),以下代码适用于我。我认为问题可能是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
发布于 2010-01-14 00:15:29
以下方法适用于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将找不到该文件。
https://stackoverflow.com/questions/2057595
复制相似问题