Jak „cat” lub „mniej” plik .odt pisarza libreoffice?

Odpowiedzi:

35

Rozwiązanie używa odt2txt. Teraz to polecenie jest dostarczane przez dwa różne pakiety, a mianowicie jeden odt2txt, z którego można zainstalować

sudo apt-get install odt2txt 

oraz pakiet unoconv(który oferuje również konwersje z wiersza polecenia między większą liczbą formatów libreoffice), który jest instalowany przez

sudo apt-get install unoconv

Jeśli masz dwa, możesz przełączać się między nimi za pomocą alternatywnego mechanizmu :

sudo update-alternatives --config odt2txt

Jeśli korzystasz z odt2txtdostarczonego pakietu, odt2txtktórego właśnie używasz

odt2txt file.odt

jeśli korzystasz z unoconvdostarczonego pakietu, musisz użyć

odt2txt --stdout file.odt

Ruruj je, aby lessmieć mniej podobne wrażenia ( odt2txt file.odt | less)

Zauważ, że jeśli nie użyjesz tej --stdoutopcji, pakiet dostarczony przez unoconv zapisze wynik w pliku o nazwie file.txt.

Sugerowany pakiet przez dystrybucję wydaje się być tym z odt2txtpakietu (ma wyższy domyślny priorytet w alternatywnym systemie); na pewno ma mniej zależności.

Rmano
źródło
Fantastycznie, dziękuję! Tak, zainstalowałem odt2txtpakiet i działa on tak, jak powinien.
Avio
Problem z unoconv, jak odkryłem, polega na tym, że chce zainstalować starszą wersję Libre Office, jeśli masz zainstalowaną nowszą. Dlatego trzymaj się sudo apt install odt2txt.
Paddy Landau,
@PaddyLandau Mocno zredagowałem odpowiedź, dziękuję za podpowiedź.
Rmano
@Rmano Nauczyłeś mnie również update-alternatives, dziękuję.
Paddy Landau
7

Możesz przeglądać tekst bez specjalnego narzędzia. Plik ODT to archiwum zip o zmienionej nazwie. Rozpakuj go, a zobaczysz kilka plików. Jeden z nich content.xmlzawiera cały tekst i jest morelub jest lessczytelny.

Barafu Albino
źródło
2

Nie można catlub lessczy more.odt pliku, ponieważ jest to plik binarny. To tak naprawdę - jak powiedziano wcześniej - przemianowane archiwum .zip, więc musisz wyodrębnić content.xmlplik, ale jak sugeruje, jest to dokument XML, więc musisz go przetworzyć jako taki, aby wyodrębnić z niego informacje.

Paul Robinson
źródło