PDF格式的页数 - Mac

时间:2016-04-17 19:31:00

标签: macos pdf

我有一个包含pdf文件的文件夹。我想要打印文件名以及pdf文件所具有的页数。我正在使用macbook。

通过将特定文件夹拖放到打印机图标,我可以轻松获取文件名称的打印,但是获取页面数量非常困难。

正如我所研究的那样,聚光灯在搜索时有多个页面可供选择,许多人在论坛中都需要使用AppleScript或终端命令。

是否有一种简单的方法可以获取页面数量以及pdf文件的名称,或者我们可以操纵聚光灯索引来查看页面数量作为选项在" list view"。

4 个答案:

答案 0 :(得分:4)

使用OS X中提供的工具的shell解决方案:

mdls -name kMDItemFSName -name kMDItemNumberOfPages  ./*.pdf | cut -d= -f 2 | paste - -

答案 1 :(得分:1)

感谢大家的帮助,我尝试了以上所有解决方案。 Pdfinfo和pdftk需要初始安装,如xpdf,xquartz等.pdfin文件和pdftk都提供警告&错误消息,虽然它们都提供输出但是错过了一些pdf文件的名称。另一件事是pdftk没有扫描子文件夹。

总而言之,msdl命令工作得很好,给出了所有文件名的页数。它也包含子文件夹中的文件。

现在,这是我从here复制的另一个解决方案。它非常整洁和完美。这个网页w.r.t子文件夹还有更多内容。这是shell脚本:

  RxHelper.toObservable(request1)
         .filter(response1 -> response1.status == "200")
         .flatMap(response1-> RxHelper.toObservable(request2))
         .map(response2 -> //Bla)
  });

答案 2 :(得分:0)

如果你不介意使用一个小的shell脚本,那么你可以试试这个:

首先,从这里安装并安装pdf工具:http://www.foolabs.com/xpdf/download.html这将为您提供非常方便的pdfinfo。

然后,您可以通过打开终端并输入以下内容来获取有关PDF文件的信息:

pdfinfo "/path/to/your/file.pdf"

...或将结果写入桌面上的文件:

pdfinfo "/path/to/your/file.pdf" | egrep "^(Pages:|Title:)" > ~/Desktop/info.txt

...或根据原始问题扫描文件夹:

find "/path/to/your/folder" -name "*.pdf" | while read thePDFFile; do pdfinfo "$thePDFFile" | egrep "^(Pages:|Title:)" >> ~/Desktop/info.txt ; echo --- >> ~/Desktop/info.txt; done

...明显替换" / path / to / your / folder"以及文件夹的路径。

希望有所帮助!

答案 3 :(得分:0)

这是另一个shell脚本解决方案,使用pdftk代替pdfinfo,使用for循环而不是find|while(因此只能在for f in *.pdf ; do echo -e -n $f '\t' ; (pdftk $f dump_data|grep ^NumberOfPages) ; done 中找到PDF当前文件夹)并生成一个以制表符分隔的名称和页数输出:

0033-0124%2E00250.pdf   NumberOfPages: 19
hooky.pdf   NumberOfPages: 1
hunt100.pdf     NumberOfPages: 1
huntmap.pdf     NumberOfPages: 1
hunt.pdf    NumberOfPages: 1
map1.pdf    NumberOfPages: 1
msoas.pdf   NumberOfPages: 1
RelativeRisk.pdf    NumberOfPages: 16

典型输出:

currencyConversion.jsp