分页: 1 / 1

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

发表于 : 2010-01-06 15:21
centerpoint
#!/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

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

发表于 : 2010-01-06 15:22
eexpress
@@@ 你准备tty下安家了?
:em04

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

发表于 : 2010-10-27 8:34
acer4740
good job

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

发表于 : 2010-10-27 17:34
tusooa

代码: 全选

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

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

发表于 : 2010-10-27 19:41
only_one
pdftotext !!
支持楼主
while read var
do
done < file
原来还可以这么用,学习了

myi=`echo "$myi+1"|bc` 这样简洁一些吧 myi=$(($myi+1))

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

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

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