#!/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
ubuntu linux下批量转换pdf转txt的脚本习作
- centerpoint
- 帖子: 95
- 注册时间: 2009-11-30 19:38
- eexpress
- 帖子: 58428
- 注册时间: 2005-08-14 21:55
- 来自: 长沙
- acer4740
- 帖子: 1405
- 注册时间: 2010-09-13 19:04
- 来自: 0xFF00EE
-
- 帖子: 6548
- 注册时间: 2008-10-31 22:12
- 系统: 践兔
- 联系:
Re: ubuntu linux下批量转换pdf转txt的脚本习作
代码: 全选
然后复制到要转换的pdf文件目录。在命令行下cd到那个目录。
#执行 ./pdf2txt.sh 即可。
拷贝到PATH中一个就行了。
代码: 全选
] ls -ld //
-
- 帖子: 186
- 注册时间: 2010-05-25 16:49
Re: ubuntu linux下批量转换pdf转txt的脚本习作
pdftotext !!
支持楼主
while read var
do
done < file
原来还可以这么用,学习了
myi=`echo "$myi+1"|bc` 这样简洁一些吧 myi=$(($myi+1))
支持楼主
while read var
do
done < file
原来还可以这么用,学习了
myi=`echo "$myi+1"|bc` 这样简洁一些吧 myi=$(($myi+1))
-
- 帖子: 186
- 注册时间: 2010-05-25 16:49
Re: ubuntu linux下批量转换pdf转txt的脚本习作
原来是 因为pdftotext不支持通配符
可以这样
find ./ -name '*.pdf' -print0 | xargs -n 1 -0 pdftotext
-pint0 和 xargs -n 1 -0 后面结尾都是零
用pdftotext转化出来的文本排版不好, lz可以考虑在脚本中加入调整文本排版的功能

可以这样
find ./ -name '*.pdf' -print0 | xargs -n 1 -0 pdftotext
-pint0 和 xargs -n 1 -0 后面结尾都是零
用pdftotext转化出来的文本排版不好, lz可以考虑在脚本中加入调整文本排版的功能
