CLI'deki odt, doc, docx ve diğer ofis belgelerinin sayfa sayısını nasıl belirleyebilirim?


13

Bir PDF belgesinin sayfa sayısını komut satırından bulmak kolaydır:

pdfinfo sample.pdf | grep ^Pages:

... ancak odtdosyalar ve diğer ofis dokümanları için benzer bir yöntem bulamadım .

Bu belgelerin sayfa sayısını programlı olarak belirlemenin bir yolu var mı?

Yanıtlar:


10

Tüm cevaplar için teşekkürler, herkes. Yardımınızla neredeyse tüm ilgili ofis belgelerinden sayfa sayısını çıkarabilen komutların bir listesini derleyebildim:

DOCX / PPTX

unzip -p 'sample.docx' docProps/app.xml | grep -oP '(?<=\<Pages\>).*(?=\</Pages\>)'

unzip -p 'sample.pptx' docProps/app.xml | grep -oP '(?<=\<Slides\>).*(?=\</Slides\>)'

Not : unzipile kurulabilir sudo apt-get install unzip.

DOC / PPT

wvSummary sample.doc | grep -oP '(?<=of Pages = )[ A-Za-z0-9]*'

wvSummary sample.ppt | grep -oP '(?<=of Slides = )[ A-Za-z0-9]*'

Not : wvSummary(büyük / küçük harfe duyarlı!) wvPaketin bir parçasıdır . İle yükleyin sudo apt-get install wv.

ODT

unzip -p sample.odt meta.xml | grep -oP '(?<=page-count=")[ A-Za-z0-9]*'

PDF

pdfinfo sample.pdf | grep -oP '(?<=Pages:          )[ A-Za-z0-9]*'

Not: Ubuntu'nun bir pdfinfoparçasıdır poppler-utilsve önceden kurulu olarak gelmelidir.

DJVU

djvused -e "n" sample.djvu

Not: paketin bir djvusedparçasıdır djvulibre-binve ile kurulabilir sudo apt-get install djvulibre-bin.


6
unzip -p document.odt meta.xml | grep -o 'page-count="[0-9]*"'

Daha fazla referans için buraya bakın .


Bağlantı için teşekkürler! bu çok ilginç bir okumaydı. Cevabınızı kabul ederdim ama diğer ofis dokümanları için birkaç başka şık komut buldum ve bunları kendi cevabımla derledim. Umarım umursamazsın.
Glutanimate

5

Ben özü bir yolunu bulamadık odtgibi dosya bilgi pdfinfoyok, ama kullanmak için hızlı komut dosyası oluşturabilir pdfinfoile odtPDF her odt dosya dönüştürme ve bunu kullanacağız değilse sonradan dönüştürülmüş dosya silme, dosya:

libreoffice --headless --invisible --convert-to pdf sample.odt
pdfinfo sample.pdf | grep ^Pages:
rm sample.pdf

Umarım bu size yardımcı olmuştur.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.