ubuntu linux下批量转换pdf转txt的脚本习作

sh/bash/dash/ksh/zsh等Shell脚本
回复
头像
centerpoint
帖子: 95
注册时间: 2009-11-30 19:38

ubuntu linux下批量转换pdf转txt的脚本习作

#1

帖子 centerpoint » 2010-01-06 15:21

#!/bin/bash
#与朋友们共享!如果大家有好的修改意见,欢迎给我留言。ubuntu.org.cn centerpoint 感谢irc#ubuntu-cn iGoogle等大牛的帮助。欢迎留言指正。
#功能:本程序可以把pdf文件批量转换成txt文本。
#用法:maxdepth 跟的数是目录深度,1为本目录。把本文件保存为pdf2txt.sh,把权限设为“可执行”,然后复制到要转换的pdf文件目录。在命令行下cd到那个目录。
#执行 ./pdf2txt.sh 即可。
#作者:ubuntu.org.cn centerpoint 2010.1.6

#扫描的文件类型。
find ./ -maxdepth 1 -name '*.pdf'>files.mybak
myi=0
while read line
do
filename="${line##*/}";
myi=`echo "$myi+1"|bc`
echo "************************$myi***************************"
ls -sh "${filename}"
pdftotext "${filename}"
ls -sh "${filename%%.pdf}.txt"
done < files.mybak
rm files.mybak
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

Re: ubuntu linux下批量转换pdf转txt的脚本习作

#2

帖子 eexpress » 2010-01-06 15:22

@@@ 你准备tty下安家了?
:em04
● 鸣学
tusooa
帖子: 6548
注册时间: 2008-10-31 22:12
系统: 践兔
联系:

Re: ubuntu linux下批量转换pdf转txt的脚本习作

#4

帖子 tusooa » 2010-10-27 17:34

代码: 全选

然后复制到要转换的pdf文件目录。在命令行下cd到那个目录。
#执行 ./pdf2txt.sh 即可。
额。。
拷贝到PATH中一个就行了。

代码: 全选

] ls -ld //
only_one
帖子: 186
注册时间: 2010-05-25 16:49

Re: ubuntu linux下批量转换pdf转txt的脚本习作

#5

帖子 only_one » 2010-10-27 19:41

pdftotext !!
支持楼主
while read var
do
done < file
原来还可以这么用,学习了

myi=`echo "$myi+1"|bc` 这样简洁一些吧 myi=$(($myi+1))
only_one
帖子: 186
注册时间: 2010-05-25 16:49

Re: ubuntu linux下批量转换pdf转txt的脚本习作

#6

帖子 only_one » 2010-10-27 19:56

原来是 因为pdftotext不支持通配符 :em04
可以这样
find ./ -name '*.pdf' -print0 | xargs -n 1 -0 pdftotext
-pint0 和 xargs -n 1 -0 后面结尾都是零

用pdftotext转化出来的文本排版不好, lz可以考虑在脚本中加入调整文本排版的功能 :em11
回复