2010-01-13 6 views
10

मैं कमांड लाइन से किसी विशिष्ट पृष्ठ पर एक पीडीएफ दस्तावेज खोलना चाहता हूं, जैसे vim +n [file]। क्या किसी भी पीडीएफ रीडर प्रोग्राम के साथ ओएसएक्स में ऐसा करने का कोई तरीका है?आप कमांड लाइन से किसी विशिष्ट पृष्ठ पर पीडीएफ कैसे खोलते हैं? (ओएसएक्स या लिनक्स)

उत्तर

8

तुम इतनी तरह -p या --page-label=PAGE कमांड लाइन तर्क का उपयोग Evince के साथ ऐसा कर सकते हैं:

evince -p 5 foo.pdf 
0

नहीं। कमांड लाइन स्विच प्रत्येक कार्यक्रम के लिए विशिष्ट हैं।

3

हो सकता है कि यह तुम्हारी मदद करेगा: http://partners.adobe.com/public/developer/en/acrobat/PDFOpenParameters.pdf

मैं इस पीडीएफ कि उपयोगी हो सकता है में एक आर्ग पेज = पृष्ठ 5 पर pagenum मिल गया! हालांकि मैंने इसका परीक्षण नहीं किया है!

संपादित करें:

मैं बस (दुर्भाग्य से मैं लिनक्स नहीं है) विंडोज पर यह परीक्षण किया है और यह काम करता है। विंडोज़ पर यह है:

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

मुझे लगता है कि यह लिनक्स या ओएसएक्स में कुछ समान है।

-1
open -a Preview someFile.pdf 
+4

हालांकि वह एक विशिष्ट पृष्ठ पर पीडीएफ कैसे खोल सकता है? – Jeff

4

निम्न विधि स्किम, 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 

अब आप एक निश्चित पीडीएफ खोलने के लिए हवा में घूमना बता और पर यह लिख कर पेज 99 पर जा सकते हैं टर्मिनल:

osascript gotopage.scpt "/full/path/to/doc/mydoc.pdf" 99 

आप उपर्युक्त रेखा को अपनी खुद की एक स्क्रिप्ट में लपेटना चाहेंगे। यह भी ध्यान रखें कि पीडीएफ का पथ पूर्ण होना चाहिए, अन्यथा स्किम को फ़ाइल नहीं मिलेगी।

5

मुझे जूलियो के जवाब से त्रुटियां मिल रही थीं। स्कीम और ओएसएक्स माउंटेन शेर (10.8.5) के वर्तमान संस्करण 1.4.6 (80) के साथ, निम्नलिखित कोड मेरे लिए काम किया। मुझे लगता है कि समस्या यह हो सकती है कि पेजनाम को पूर्णांक के रूप में माना जाना चाहिए, लेकिन इसे स्ट्रिंग के रूप में पार्स किया जाता है। यह कोड मानता है कि आपके पास स्कीम स्थापित है।

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

संबंधित मुद्दे