wake-up-neo.com

"Konnte keinen Dateideskriptor finden, der sich auf die Konsole bezieht" in Ubuntu bash unter Windows

Ich bin neu hier und es ist mein erster Beitrag.

Ich habe ein Problem mit Bash unter Ubuntu unter Windows. Wenn ich auf dem Mac-Terminal "open (filename)" eingebe, wird die Datei mit dem richtigen Programm geöffnet, aber wenn ich versuche, sie unter Windows bash zu verwenden, wird angezeigt: "Konnte keinen Dateideskriptor finden, der auf die Konsole verweist".

Ich habe auch xdg-open und gnome-open ausprobiert, aber keiner von ihnen funktioniert. Kann jemand erklären, wie das Problem behoben werden kann und wie der Befehl open funktioniert?
Danke im Voraus!

43
Pets

Anstelle von open kannst du xdg-open was dasselbe macht, unabhängig von der Anwendung, d. h. pdf, Bild usw. Es wird ein neues virtuelles Terminal geöffnet (ich habe dies unter Linux versucht)

Beispiel:

xdg-open ~/Pictures/Wallpapers/myPic.jpg

xdg-open ~/Docs/holidays.pdf

53
Sharath BJ

Verwenden Sie unter Linux xdg-open. open ist für Mac OS. open unter linux ist ein namensalias von openvt (open virtual terminal).

Zur Vereinfachung können Sie die folgende Zeile an ~/.bashrc oder ~/.zshrc anhängen, je nachdem, welche Shell Sie verwenden.

alias o="xdg-open" # o stands for open 

Dann können Sie das nächste Mal einfach wie folgt tippen, um einige Tastaturanschläge zu reduzieren.

o file_name.pdf

29
Lance

Das liegt daran, dass open ein Mac-spezifischer Befehl ist, unter Linux (Ubuntu) nicht verfügbar ist, Mac open eine Datei ausführen kann (wenn die Datei ausführbar ist) oder die Datei in einem Text öffnet Editor (wenn es sich um ein Dokument oder eine Textdatei handelt) oder öffnen Sie ein Verzeichnis.

19
hcheung