Otwieranie plików w domyślnej aplikacji z terminala w 2023
Blisko dziesięć lat temu, bo w sierpniu dwa tysiące czternastego roku, napisałem krótki artykuł dotyczący tego, jak z poziomu wiersza poleceń otworzyć plik w domyślnej aplikacji, przypisanej do typu pliku (dostępny tutaj: Linux - Jak z konsoli otworzyć plik w domyślnym programie). Od tamtej pory właściwe podejście do tego problemu zdążyło się kilkukrotnie zmienić. W tym artykule postaram się zaktualizować tę wiedzę i pokazać jak zabrać się za to w 2023 roku.
Prezentacja wideo
Nim przejdę do rzeczy, zamieszam link do nagrania wideo obrazującego treść tego artykułu, jeśli komuś bardziej odpowiada taka forma.
Do dzieła!
Wyobraźmy sobie sytuację, że mamy w katalogu plik graficzny i chcemy go otworzyć w domyślnej aplikacji z poziomu terminala.
$ ls owl.jpg
Jeśli nie dokonaliśmy żadnych zmian, dla Ubuntu ze środowiskiem graficznym GNOM będzie to aplikacja Eye of GNOME - eog. Nie musi tak jednak być, i nie musimy znać docelowej aplikacji. Nas interesuje otworzenie pliku w domyślnym programie, bez wiedzy i dociekania jaki to program. We wspomnianym artykule pisałem o możliwości użycia polecenia gnome-open. Jak jednak widzimy, nie jest już ono dostępne.
$ gnome-open owl.jpg gnome-open: comand not found
Historycznie rzecz biorąc, zostało ono zastąpione poleceniem gvfs-open i choć nadal to polecenie działa i plik graficzny zostanie otworzony, to jednak w terminalu widać ostrzeżenie, że powinniśmy użyć jeszcze innego polecenia, a mianowicie gio, co stanowi skrót od GNOME Input/Output. Swoją drogą, komenda ta ma znacznie szersze możliwości niż tylko otworzenie pliku w dedykowanym dla jego typu programie, ale to temat na zupełnie inne nagranie. My skupimy się ściśle na naszym zadaniu.
$ gvfs-open owl.jpg This tool has been deprecated, use 'gio open' instead. See 'gio help open' for more info.
Wywołanie komendy gio wyglądać będzie następująco:
gio open owl.jpg
To rozwiązanie jest jednak dedykowane wyłącznie środowisku graficznemu GNOME. Jeśli interesuje nas rozwiązanie działające niezależnie od środowiska, dobrą alternatywą będzie polecenie xdg-open. Użyjemy go bardzo podobnie:
xdg-open owl.jpg
Podumowanie
Pozostaje nam zatem podsumować, że dla środowiska gnom możemy śmiało używać polecenia `gio open`, a dla pozostałych przypadków warto pamiętać o komendzie `xdg-open`.

Komentarze (2)