Я хочу открыть PDF-документ на определенной странице из командной строки, вроде vim +n [file]
. Есть ли способ сделать это в OSX, с любой программой чтения PDF?
Как открыть PDF файл на определенной странице из командной строки? (OSX или Linux)
Ответ 1
Вы можете сделать это с помощью Evince с помощью аргумента командной строки -p
или --page-label=PAGE
, например:
evince -p 5 foo.pdf
Ответ 2
Я продолжал получать ошибки от ответа Хулио. С текущей версией 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
Скимм по-прежнему требуется абсолютное имя файла. Таким образом, вы будете запускать его с той же командой, о которой упоминалось в ответ Хулио. osascript gotopage.scpt "/full/path/to/doc/mydoc.pdf" 99
Ответ 3
Следующий метод работает с 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 script. Также обратите внимание, что путь к PDF должен быть абсолютным, иначе Skim не найдет файл.
Ответ 4
Возможно, это поможет вам: http://partners.adobe.com/public/developer/en/acrobat/PDFOpenParameters.pdf
Я нашел страницу arg = pagenum на странице 5 в этом pdf, которая может быть полезна! Я не тестировал это, хотя!
EDIT:
Я просто протестировал его на Windows (к сожалению, у меня нет Linux), и он работает. В окнах это:
<path to Acrobat Reader.exe> /A "page=2" somePDFFile.pdf
Я предполагаю, что это похоже на Linux или OSX.
Ответ 5
Нет. Переключатели командной строки относятся к каждой программе.
Ответ 6
open -a Preview someFile.pdf