как открыть PDF на определенной странице из командной строки? (OSX или Linux) - PullRequest
10 голосов
/ 13 января 2010

Я хочу открыть документ PDF на определенной странице из командной строки, вроде vim +n [file]. Есть ли способ сделать это в OSX, с любой программой для чтения PDF?

Ответы [ 6 ]

9 голосов
/ 13 января 2010

Вы можете сделать это с помощью Evince , используя аргумент командной строки -p или --page-label=PAGE, например:

evince -p 5 foo.pdf
5 голосов
/ 07 ноября 2013

Я продолжал получать ошибки от ответа Хулио. С текущей версией 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 все еще нуждается в абсолютном имени файла. Таким образом, вы запускаете его с помощью той же команды, которая указана в ответе Хулио. osascript gotopage.scpt "/full/path/to/doc/mydoc.pdf" 99

4 голосов
/ 13 января 2010

Следующий метод работает с 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 голосов
/ 13 января 2010

Может быть, это поможет вам: http://partners.adobe.com/public/developer/en/acrobat/PDFOpenParameters.pdf

Я нашел arg page = pagenum на странице 5 в этом pdf, который может быть полезен! Я еще не проверял это!

EDIT:

Я только что протестировал его в Windows (к сожалению, у меня нет Linux), и он работает. На окнах это:

<path to Acrobat Reader.exe> /A "page=2" somePDFFile.pdf

Полагаю, что-то похожее в Linux или OSX.

0 голосов
/ 13 января 2010
open -a Preview someFile.pdf
0 голосов
/ 13 января 2010

Нет. Переключатели командной строки специфичны для каждой программы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...