目標は、コマンドラインを使用してPDFファイルを特定のページに開くことです。より一般的な質問は、特定のアプリで使用できる引数を見つける方法です。開くことができます。 open
コマンドを使用したMacOS XコマンドラインのPDFファイルで、引数を渡すことができることはわかっていますが、PDF)を開くために配置する正確な引数を把握できませんでした。 =ファイルから5ページへ。
次のことをやみくもに試しましたが、うまくいきませんでした...
open file.pdf --args -page=5
open file.pdf --args -p 5
open file.pdf --args -page 5
この質問 を見たことがありますが、解決策にはevinceをインストールするか、Appleスクリプトを書く必要があります。WindowsコマンドのようにMacで--argsを渡すだけの簡単な解決策はありませんか。ライン?
すべてのWindowsアプリケーションがコマンドライン引数を理解していることを私は知りませんでした。
それが事実であるかどうかにかかわらず、MacOSではそうではありません。ターミナルアプリケーションを使用しているときは、UNIXまたはLinuxオペレーティングシステムに期待されるすべてのパターンに従うBSDサブシステムとインターフェイスしています。
Bashシェルと* NIXコマンドラインに慣れるためのリソースは豊富にあります。開始するには、man
コマンドを使用すると、渡したコマンドのマンページが表示されます。通常、コマンドの後に入力するスペースで区切られたすべての「単語」は、少なくともユーザーが入力するまで、そのコマンドの引数として扱われます。 |
、<
、>
、&
などの出力リダイレクトまたは制御文字をヒットします。
したがって、あなたの例では、open
を呼び出し、引数としてfile.pdf
、--args
、および-page=5
を渡していました。あなたが観察したように、open
はこれらのほとんどをどうするかを知りません。
とにかく、もっと深く掘り下げましょう。ほとんどのアプリケーション(この場合はPreview.appなど)には、アプリケーションバンドルのどこかに実行可能ファイルがあります。実際にこれ(/Applications/Preview.app/Contents/MacOS/Preview
)を実行して、open
を経由せずに直接プレビューを開始できますが、コマンドライン引数を理解できるのは特定の専用実行可能ファイルのみです。 Preview
はそれらの1つではありません。
man
コマンドは、マンページがインストールされているコマンドに対してのみ機能します。これらは通常、シェルの$PATH
変数内のコマンドのみです。他の実行可能ファイルの場合(通常は標準の実行可能ファイルの場合も)、--help
引数を指定して実行可能ファイルを呼び出し、パスにあるかどうかに関係なく使用情報を取得できます。これはすべてに機能するわけではありませんが、一般的なパターンです。
したがって、実行可能ファイルがコマンドライン引数を理解するPDFリーダーが存在する可能性がありますが、プレビューを引き続き使用している場合は、別のパラダイムに移行する必要があります-- AppleScript 。Wikipediaですべてを読むことができますが、基本的には、プログラムでAppleイベントをアプリケーションに送信できる自然言語のスクリプト言語です。一部のアプリケーションは実装しています。より高度な自動化を可能にする広範なAppleScriptライブラリ。
ここでの朗報は、コマンドラインでosascript
を使用してAppleScriptを処理できることです。さらに良いニュースは、プレビューをPDF here: https://discussions.Apple.com/thread)のページにめくるというAppleScriptの問題を人々がすでに解決していることです。/3215851
したがって、問題を解決するためのアプローチは次のとおりです。
open file.pdf
でPDFを開くと正常に機能するはずです。