vlc -I rc
OS 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 명령이 동일하지 않은 이유는 무엇입니까? 시스템이 이 두 가지(이론적으로 동일한) 명령에 대해 다른 출력을 반환하게 하는 원인은 무엇입니까?
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 패키지를 사용하려면 나열된 지침을 따르는 것이 좋습니다.여기, 상당히 일반적인 Mac open
명령을 사용합니다.
답변2
VLC 위키 페이지에 따르면명령줄":
터미널 창에서 다음을 입력하세요.
../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