Wie kann ich die CLI-Version des VLC unter OSX verwenden?
Nach der Installation von VLC unter OSX funktioniert es problemlos über den normalen GUI-Prozess, Spotlight usw. Ich weiß auch, dass dies möglich ist
open bla.avi -a vlc
Wenn ich jedoch einen vlc
Befehl in der Shell absetze, funktioniert dies nicht. which vlc
in shell gibt auch nichts zurück.
Die CLI-Version von VLC ist sehr praktisch für das Transcodieren, Streamen usw. Es wäre also schön, wenn es funktioniert.
vlc
in Terminal ausstelle , sagt es mir, dasscvlc
ich es verwenden soll. Ich denke, es wäre dasselbe unter OSX.Antworten:
Der Befehl
open bla.avi -a vlc
funktioniert, weil OS X seine Launch Services-Datenbank verwendet, um die Anwendungs-VLC zu öffnen. Dies hat nichts mit einer Befehlszeilen-Binärdatei mit demselben Namen zu tun, die nicht standardmäßig installiert ist.Die Binärdatei, nach der Sie suchen, befindet sich im
VLC.app
Paket. Sie können diese also in ein Terminal eingeben:Dies öffnet die interaktive Befehlszeile VLC. Oder führen Sie Folgendes aus, um die obige Zeile als Alias für Folgendes zu registrieren
vlc
:Sobald Sie dies hinzugefügt haben, müssen Sie Ihr Terminal neu starten. Geben
vlc
Sie nun ein und Sie gelangen zur Befehlszeile.Wenn Sie die interaktive Oberfläche nicht mögen oder
VLC
mit anderen Optionen verwenden möchten , müssen Sie Ihre~/.bash_profile
entsprechend bearbeiten , zopen -e ~/.bash_profile
. B. durch .quelle
-I rc
aus dem Befehl, wenn die GUI tatsächlich über den vlc-Befehl in der Befehlszeile geöffnet werden soll.open -a VLC
. Dies funktioniert mit jeder App in OS X.cvlc
, um zu verdeutlichen, dass es sich um die Befehlszeile VLC handelt (und um auch mit der Linux-Version konsistent zu sein).OS X-Anwendungen installieren normalerweise keine ausführbaren Programme außerhalb ihres Anwendungspakets. Da Sie normalerweise nicht über die Befehlszeile mit ihnen interagieren, werden sie nicht in einen Ordner Ihres Ordners verschoben
PATH
.Wenn Sie VLC auf installiert haben
/Applications
, lautet die aktuelle ausführbare Datei/Applications/VLC.app/Contents/MacOS/VLC
./Applications/VLC.app/Contents/MacOS/VLC -h
Zeigt Hilfe an und/Applications/VLC.app/Contents/MacOS/VLC --intf ncurses
startet die ncurses-Benutzeroberfläche.quelle
--intf ncurses
Um
vlc
von der Befehlszeile aus zuzugreifen , können Sie eine lokale symbolische Verknüpfung wie folgt erstellen:Um diesen Befehl für alle Benutzer verfügbar zu haben, können Sie ihn
/usr/local/bin
stattdessen verknüpfen .Stellen Sie sicher, dass sich Ihr
~/bin
(oder/usr/local/bin
) in Ihrer Umgebungsvariablen befindet,PATH
dh, dass Ihre~/.profile
Datei Folgendes enthält:Der obige Code ist das Standardverhalten unter Linux.
quelle
Die Dummy-Schnittstelle ermöglicht die Stapelverarbeitung in der Befehlszeile. Ich verwende ein Shell-Skript wie dieses, das in / usr / local / bin / vlc gespeichert ist:
quelle
FYI und / oder ein Tipp.
Hier sind zwei Möglichkeiten, um den tatsächlichen Pfad der App zu ermitteln , die mit dem
open
Befehl gestartet wird .Hilfreich, in diesem Fall befindet sich der VLC in einem anderen Verzeichnis
/Applications
als/Users/<user>/Applications
(~/Applications
) oder anderen Verzeichnissen.Über AppleScript
Einfach, aber es startet die App.
Über den Befehl lsregister
Etwas kompliziert, startet die App aber nicht.
Getestet auf: macOS HighSierra (OSX 10.13.6)
quelle
Zunächst müssen Sie die tatsächliche ausführbare Binärdatei im VLC Mac-Anwendungspaket suchen. Öffnen
Finder
Sie denApplications
Ordner, klicken Sie mit der rechten Maustaste auf die VLC-App und klicken Sie dann aufShow Package Contents
. Jetzt können Sie durchsuchen, was tatsächlich drin ist.In diesem Fall befindet sich die VLC-Binärdatei
Contents/MacOS
als Datei im OrdnerVLC
. Öffnen SieTerminal
und geben Sie den genauen Dateipfad dazu, und Sie werden die VLC binär ausführen finden:/Applications/VLC.app/Contents/MacOS/VLC
. Wenn Sie nicht jedes Mal den gesamten Pfad verwenden möchten, können Sie einen Symlink erstellen und Ihren Bash-Pfad so bearbeiten, dass er darauf verweist.Jetzt, da Sie die Binärdatei direkt über die CLI aufrufen können, möchten Sie wahrscheinlich eine Schnittstelle auswählen, damit nicht die übliche GUI angezeigt wird. Eine vollständige Liste der verfügbaren Schnittstellen finden Sie auf der Wiki-Seite VLC-Schnittstellen .
Sobald Sie den Befehlssatz für Ihre VLC-CLI-Aufrufe gefunden haben, der Ihre beabsichtigte Ausgabe erzeugt, möchten Sie wahrscheinlich die
dummy
Schnittstelle verwenden, wenn Sie VLC in Ihrer Programm- / Stapelverarbeitung aufrufen. Diedummy
Schnittstelle ist im Grunde nichts anderes als eine Ausgabe im Terminal, wie bei den meisten nicht interaktiven CLI-Programmen.Endresultat:
/Applications/VLC.app/Contents/MacOS/VLC -I dummy [further parameters here]
Ich empfehle, den
-vvv
Parameter zu verwenden, damit Sie beim Testen verschiedener Befehle eine umfassende Protokollausgabe erhalten.quelle