Otwarcie bieżącego katalogu z terminala na przeglądarkę plików?


15

Mój bieżący katalog jest pochowany głęboko w wielu warstwach podfolderów z mojego katalogu domowego. Jeśli chcę otworzyć ten katalog w przeglądarce plików opartej na GUI , muszę dwukrotnie kliknąć folder po folderze, aby go otworzyć . To jest bardzo czasochłonne. Z drugiej strony, przy bardzo niewielu naciśnięciach klawiszy i kilkakrotnym naciśnięciu przycisku Tab, jest bardzo łatwo dostępny za pośrednictwem terminala.

Chcę wiedzieć, czy istnieje sposób na otwarcie bieżącego katalogu w terminalu w przeglądarce plików. Jakie jest polecenie, aby to zrobić?

Dla porównania mam system ubuntu, ale chciałbym wiedzieć, jakie są polecenia w różnych dystrybucjach systemu Linux.


2
To naprawdę zależy od używanego systemu operacyjnego i środowiska GUI. Na przykład w górnej części mojej głowy w systemie OS X open /path/to/some/directoryotworzy się okno Findera dla tego katalogu. W systemie Windows jest to pewne wywołanie explorer.exe W KDE, GNOME lub LXDE, prawdopodobnie istnieją inkantacje specyficzne dla każdego środowiska, z którego można korzystać. Krótko mówiąc, potrzeba więcej szczegółów dla konkretnego przypadku użycia.
DopeGhoti

Zależy to od konkretnego „eksploratora plików” lub używanego systemu okien. Jako odniesienie, w Mac OS X, open .otworzy okno Findera w bieżącym katalogu. Podobne polecenie może istnieć w twoim systemie.
dhag

Powinieneś edytować swoje pytanie, aby uwzględnić eksplorator plików oparty na GUI, którego używasz / chcesz używać.
Anthony Geoghegan

@drewbenn: Chciałbym opublikować to jako odpowiedź, ponieważ będzie to działać w różnych środowiskach.
saiarcot895

Odpowiedzi:


26

xdg-open .

xdg-open jest częścią pakietu xdg-utils , który jest zwykle domyślnie instalowany w wielu dystrybucjach (w tym Ubuntu). Jest przeznaczony do pracy w wielu środowiskach pulpitu, wywołując domyślną procedurę obsługi typu pliku w środowisku pulpitu.

Możesz przekazać katalog, plik lub adres URL , a to otworzy odpowiedni program dla tego parametru. Na przykład w moim systemie KDE:

  • xdg-open . otwiera bieżący katalog w menedżerze plików Dolphin
  • xdg-open foo.txt otwiera foo.txt w emacsclient, który skonfigurowałem jako domyślny moduł obsługi plików .txt
  • xdg-open http://www.google.com/ otwiera google.com w mojej domyślnej przeglądarce internetowej

Aplikacja otworzy się jako osobne okno, a na terminalu pojawi się monit, który może wydawać inne polecenia lub zamykać terminal bez wpływu na nowe okno GUI.

Zwykle pojawia się komunikat o błędzie stderr, ale po prostu je ignoruję.

Edycja:
dodanie argumentów xdg-open . >/dev/null 2>&1przekierowuje błędy i dane wyjściowe. To połączenie nie zablokuje twojego terminala. Powiązanie tego z pseudonimem filemanager='xdg-open . >/dev/null 2>&1'może się przydać.


Złoty. Dziękuję
Adil Saju,

9

Prawie każdą aplikację GUI (w systemach X Window) można otworzyć z okna terminala w tym GUI. Aby otworzyć dowolną aplikację GUI, wpisz nazwę pliku wykonywalnego w wierszu poleceń powłoki. Większość przeglądarek plików przyjmuje katalog jako argument wiersza poleceń, dlatego zwykle powinieneś podać go .jako parametr.

Oto kilka przykładów niektórych popularnych systemów, większość systemów opartych na X działa podobnie.

W Gnome możesz uruchomić nautilus(domyślna przeglądarka plików) bezpośrednio, gnome-openaw Gnome 2 możesz użyć do otwarcia dowolnego pliku (w tym katalogów) za pomocą skonfigurowanej aplikacji do obsługi plików Gnome:

$ nautilus .

lub

$ gnome-open .

W KDE istnieją dwie popularne przeglądarki plików, nie znam podobnego polecenia gnome-open, chociaż gnome-openmożna je wykonać w KDE, ale domyślnie otwiera aplikacje Gnome.

$ dolphin .

lub

$ konquerer .

W OS X , jak wspomniano w komentarzach, można zastosować podobny program wiersza poleceń open.

$ open .

Co jeśli nie znasz nazwy pliku przeglądarki plików w systemie?

Jeśli na Gnome 2, użyj gnome-open .Jeśli na OS X, zadzwoń open .. Każdy z nich uruchomi skonfigurowaną przeglądarkę plików dla twojego środowiska GUI.

Jeśli nie znasz takiego polecenia w systemie okiennym, oto jeden ze sposobów, aby dowiedzieć się w systemach z pspoleceniem, które rozumie opcje -u USERi -o FORMAT:

  1. W oknie terminala wpisz ps -u$USER -o comm > /tmp/$$A
  2. W GUI uruchom przeglądarkę plików.
  3. W oknie terminala wpisz ps -u $USER -o comm > /tmp/$$B(Zwróć uwagę na Bprzyrostek, jest to inny plik niż krok 1).
  4. Również w terminalu wpisz diff /tmp/$$[AB].

Powinien wyświetlać nazwę przeglądarki plików. Możliwe, że zobaczysz więcej niż jedną nazwę, jeśli inny program uruchomi się pod twoim identyfikatorem użytkownika w czasie między połączeniami z ps.

Na przykład:

$ ps -u $USER -o comm > /tmp/$$A
$ # open file browser in gui
$ ps -u $USER -o comm > /tmp/$$B
$ diff /tmp/$$[AB]
95a96
> nautilus

Jeśli nie wiesz, jaką przeglądarkę plików ma Twój system, jak możesz dowiedzieć się z wiersza poleceń?
Paul,

@Paul, zobacz zaktualizowaną odpowiedź. Dzięki.
RobertL

2

Ubuntu używa domyślnej przeglądarki plików, nautiluso ile pamiętam. Dlatego, aby otworzyć określony folder z terminala, możesz wpisać coś takiego:

nautilus /path/to/your/dir

lub

cd /path/to/your/dir && nautilus .

nautilusautomatycznie odłącza się od terminala, do którego został wywołany, ale załóżmy, że używasz innej przeglądarki plików i chcesz zamknąć terminal, z którego wywołałeś swoją przeglądarkę plików, możesz nohupto zrobić. Jeśli używasz, powiedzmy, thunar(innej przeglądarki plików), możesz wpisać następujące polecenie:

nohup thunar /path/to/your/dir & exit

-1

Po prostu użyj gio open

Posługiwać się -

gio open .
gio open example/

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.