Jak otworzyć plik PDF z terminala?


176

Wcześniej pracowałem na terminalu Mac i użyłem:

open file2open.pdf

a plik PDF zostanie otwarty w podglądzie lub czymkolwiek, czym była moja domyślna przeglądarka. Kiedy używam go w terminalu w Ubuntu, pojawia się następujący komunikat o błędzie:

Couldn't get a file descriptor referring to the console

21
Ubuntu to nie Mac (tylko to zaznaczam).
RolandiXor

@Roland, ale Mac twierdzi, że jest systemem uniksowym, więc założyłem, że terminal będzie zachowywał się co najmniej tak samo
yayu

14
Linux nie jest Uniksem.
RolandiXor

19
Linux był tym, czym chciał być Unix, kiedy dorastał.
david6,

1
Możesz użyć fbi (Linux przeglądarka obrazów bufora ramek) apt-get -y zainstaluj fbi fbgs arch.pdf man fbgsdla kolorów i rozdzielczości.

Odpowiedzi:


205

Większość środowisk komputerowych (ogólne)

xdg-open file2open.xxx    

GNOME (ogólne)

  • do Xenial (16.04):

    gvfs-open file2open.xxx
    
  • zaczynając od Artful (17.10):

    gio open file2open.xxx
    

( xxx= jakieś rozszerzenie pliku). Za pomocą tego polecenia zostanie uruchomiona domyślna aplikacja dla xxx(na przykład evince, jeśli chcesz otworzyć PDF).

Specyficzne dla aplikacji

  • Za pomocą Evince, domyślnej przeglądarki dokumentów GNOME:

    evince file2open.pdf
    
  • Używając Okular, domyślnego viwer dokumentu KDE:

    okular file2open.pdf
    

Więc absolutnie nie ma sposobu, aby wyświetlić tekst pliku pdf wewnątrz terminala? Czy zdjęcia zostały usunięte lub przekonwertowane na grafikę ASCII?
Vorac

5
To kolejne pytanie. Możesz przeglądać za mniej. Przykład: mniej my-file.pdf
desgua

2
podczas korzystania evincez dokumentu zamyka się po zamknięciu terminalu. xdg-open zgodnie z odpowiedzią elmicha zadziała dla mnie.
Jon49

1
W przypadku gnome (3) jest to wymagane, libgnome2-binco nie jest instalowane domyślnie.
Lode,

1
evince file2open.pdfjest prosty sposób na to samo.
Vikrant,

91

Możesz także użyć:

xdg-open foo.pdf

xdg-open działa w Gnome, KDE, Xfce, LXDE i być może na innych komputerach.

Możesz umieścić alias w ~ / .bash_aliases:

alias open=xdg-open

2
+1. Tego właśnie używa Chrome. Obsługuje również URIS (np. Xdg-open irc: // ...). Całkiem fajne.
crazy2be

3
to jest poprawna odpowiedź, a nie powyższa, i będzie działać ze wszystkimi nowoczesnymi DE.
OneOfOne

21

Dla wszystkich zagubionych użytkowników komputerów Mac w Ubuntu-land ..

Edytuj plik .bashrc i dodaj:

alias open='gnome-open'

Następnie możesz po prostu użyć:

open file2open.pdf

Nie działa na Linux Mint z Cinnamon. `xdg-open 'jest właściwą drogą.
Cain

na mennicy albo xdb-open file.pdf lub xreader file.pdf
zzapper

8

Jeśli chcesz wyświetlić plik PDF w Terminalu (interfejs wiersza poleceń), spróbuj użyć zathura.

Zainstaluj Zathura sudo apt-get install zathura -y.

Aby wyświetlić plik PDF, po prostu uruchom => zathura /path/to/xxx.pdf

BTW: zathura i tak wymaga X11, nie działa na serwerach bez zainstalowanego X.


Działa świetnie i wciąż ładnie aktualizowany na github.
jamescampbell

8

jeśli masz zainstalowaną Przeglądarkę dokumentów, wpisz następujące polecenie:

evince Name_of_pdf_file

jeśli nie jest jeszcze zainstalowany, możesz go najpierw zainstalować za pomocą następującego polecenia:

sudo apt-get install evince

Możesz dodać, jak go zainstalować, gdy nie jest
MadMike,

4

jeśli pdf jest prosty ...

pdftotext -layout file2open.pdf - | more

Możemy użyć tego w trybie tekstowym, ssh itp.



2

Możesz także użyć

ooffice filename.pdf

aby otworzyć plik w otwartym biurze.


6
@ Pilot6 Dla mnie to wygląda na odpowiedź.
Seth

1

Ja osobiście używam skryptu powłoki:

$ cat pdf
#! /bin/bash

gnome-open ${1:-*.pdf}

Gdy zadzwonisz pdf, otworzy wszystkie pliki pdf w bieżącym katalogu, określ, który plik pdf, podając argument. Mam wiele katalogów zawierających tylko jeden plik pdf (np. Tyle katalogów LaTeX), więc pisanie pdfoszczędza mi trochę czasu i naciskania klawiszy.


1

Powłoka Z ( zsh) posiada alias oparciu sufiksu ( -s), to pozwala skonfigurować skojarzenia plików pomiędzy rozszerzeniem jak .jpgi odpowiedniej aplikacji jak xreader:

alias -s pdf='xreader'

W przypadku takiego aliasu wystarczy wpisać nazwę pliku i nacisnąć ↵ Return, np .:

file.pdf

Powłoka Zsh ma aliasy (-s) oparte na sufiksach, które pozwalają skonfigurować powiązanie pliku między rozszerzeniem pliku np. Jpg a odpowiednią aplikacją, powiedzmy xnview
zzapper

0

Możesz zdefiniować następującą funkcję w swoim ~/.bashrc

open () {
     read -p "Enter File Name: " ; xdg-open "$REPLY"
}

open () {read -p "Wprowadź plik / lokalizację / nazwę:"; '' xdg-open $ REPLY ''}

0

Zbyt otwarte przy użyciu pakietu Libre:

loffice <file.pdf>

lub

soffice <file.pdf>

lub

CHodźmy grać -

gooffice <file.pdf>

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.