OS Xファイルシステムの大文字と小文字が区別されず、vlcコマンドが中断される

OS Xファイルシステムの大文字と小文字が区別されず、vlcコマンドが中断される

vlc -I rcOS Xターミナルbashプロンプトから返されたエラー:

VLC media player 2.2.3 Weatherwax (revision 2.2.3-3-g0777f11) [0000000100233778] core libvlc error: No plugins found! Check your VLC installation.

VLC -I rc リモートVLCセッションが正常に開かれました。、予想通り。ファイルシステムの大文字と小文字を区別しないため、vlcとVLCコマンドが同じではないのはなぜですか?システムがこれら2つの(理論的に同じ)コマンドに対して異なる出力を返す原因は何ですか?

which vlcリターン: /Applications/VLC.app/Contents/MacOS/vlc

which VLC/Applications/VLC.app/Contents/MacOS/VLCに戻る

ls -la /Applications/VLC.app/Contents/MacOS/返品 drwxr-xr-x@ 8 jay admin 272 May 4 06:52 . drwxr-xr-x@ 8 jay admin 272 May 4 06:52 .. -rwxr-xr-x@ 1 jay admin 28656 May 4 06:52 VLC drwxr-xr-x@ 2 jay admin 68 May 4 06:52 bin drwxr-xr-x@ 3 jay admin 102 May 4 06:52 include drwxr-xr-x@ 6 jay admin 204 May 4 06:52 lib drwxr-xr-x@ 303 jay admin 10302 May 4 06:52 plugins drwxr-xr-x@ 5 jay admin 170 May 4 06:52 share

echo $PATH次の関連項目を返します。

/Applications/VLC.app/Contents/MacOS

エレガントではないように、以下を実行して動作を一時的に修正しましたが、 alias vlc='VLC'正確に何が起こっているのか理解したいと思います。アイデアはありますか?

修正する:

type VLC返品: VLC is /Applications/VLC.app/Contents/MacOS/VLC

type vlc返品: vlc is hashed (/Applications/VLC.app/Contents/MacOS/vlc)

ハッシュをクリアしてhash -r再実行すると、 vlc誤った実行が繰り返されます。

答え1

これは推測にすぎませんが、この問題はMac OS Xでのアプリケーションの呼び出しとその動作方法に関連していると考えられていますwhich。他の人が述べたように、ファイルシステムでは大文字と小文字を区別しません。which少し愚かなことです。シェルの実行パス内の実行可能なバイナリの場所のみを表示します。理由が何であれ、/Applicationsそこにありますが、正確ではありません。 OSの多くのアプリは、関連する.appファイルの識別によってトリガされます。アプリケーション全体を構成するplistファイルおよびその他のファイル。

したがって、これを使用するとwhich端末が実行しようとしているバイナリが表示されますが、その場合、その環境で動作するために必要なすべての関連アプリケーションライブラリと設定ファイルは無視されます。これは、MacPortsのコマンド /usr/binやMacPortsで構築したコマンドには適用されません。したがって、代わりに外部パッケージシステムを介してvlc(またはMplayer!)を試してみることもできますが、そのアプリケーションを使用する代わりにXで開くこともできます。

Mac OS Xのコマンドラインで.appパッケージを使用するには、記載されている手順に従ってください。ここ、かなり一般的なMacopenコマンドを使用します。

答え2

VLC Wikiページによるとコマンドライン":

ターミナルウィンドウで、次のように入力します。

../VLC.app/Contents/MacOS/VLC options

私が混乱している理由は、VLCの実行のためにVLCのマニュアルに示されている例の多くが次のようなものです。

vlc -I rc

vlcだから端末に入力する必要があると思いました。このページのコメント作成者のおかげで、OS Xのファイルシステムは大文字と小文字を区別しませんが、特定のアプリケーション(この場合はVLC)の内部コードは実際に大文字と小文字を区別できることを理解しました。 VLC文書にはOS Xの要件が明確に記載されています。

OS XコマンドラインからVLCリモートインタフェースを呼び出す正しい方法は次のとおりです。

/Applications/VLC.app/Contents/MacOS/VLC -I rc

関連情報