基于列分割文本文件

时间:2012-04-05 21:25:17

标签: linux split centos command-prompt

所以我有一张发票需要我做一份报告。它平均长约250页。所以我正在尝试创建一个脚本,它将提取发票的特定值并进行报告。这是我的问题:

  1. 发票采用pdf格式,其中包含两列。在Linux命令中,我想使用'pdftotext'Linux命令转换为多个文本文件(每个txt文件代表每个pdf页面)。我该怎么做
  2. 我认识到'pdftotext'命令将页面的一部分和页面的右侧部分分开,在它们之间有21个空格。如何将数据的右侧(在连续读取至少21个空格后确定)到文件末尾
  3. 由于文件较大且我只持续几页文件,如何删除脚本中的所有文本文件(非手动),直到我读取关键字(让我们只说关键字=开始发票)? / LI>

    我知道这是很多问题,但我对Linux命令可以做什么感到困惑。你们能引导我走向正确的方向吗?感谢

    PS:我正在使用CentOS 5.2

1 个答案:

答案 0 :(得分:0)

怎么样:

pdftotext YOUR.pdf | sed 's/^\([^ ]\+\) \{21\}.*/\1/' > OUTPUT
pdftotext YOUR.pdf | sed 's/.* \{21\}\(.*\)/\1/' >> OUTPUT

但您也应该查看pdftotext的{​​{1}}和-raw选项。还有更多的方法可以做到这一点......