程序解决方案通过共享文件夹读

时间:2016-06-29 15:04:16

标签: oracle batch-file plsql oracle11g

我有一个快速的项目,我正在为我们的一位副总裁工作。

我们在网络文件共享中存储了几千个CAD作业。文件结构使得CAD作业有一个父文件夹。部分文件夹名称包含作业编号。在文件夹中,有1到多个.ini文本文件,其中包含我需要的连接信息。

我需要的是一种编程方式来搜索所有文件夹并从文件夹名称中提取作业编号,以及从ini文件中提取所有连接值。

例如,对于名为CM8252390-3的文件夹,作业号为8252390-3。这个文件夹里面有3个ini文件。 ini文件里面的内容如下:

[Connection]
Name=IMP_Acme_3.5
[Origin]
X=-15.044784
Y=19.620095
Z=44.621395

所以我的程序需要给我以下结果

Job         Connection
8252390-3   IMP_Acme1_3.5
8252390-3   IMP_Acme2_3.5
8252390-3   IMP_Acme3_3.5
8254260-1   IMP_Acme3_2.4
8254260-1   IMP_Acme3_4.1
...continued for all folders in the network share

关于最佳方法的任何建议。我主要是Oracle PL / SQL开发人员,但有一些基本的Windows批处理和Unix shell经验。如果我可以将数据加载到Oracle表中,我可以使用PL / SQL工具进行搜索,但使用shell,批处理或其他工具是否有更好的方法?

谢谢。

1 个答案:

答案 0 :(得分:0)

我认为这是Powershell或vbScript的工作。使用这些工具将您需要的信息写入一个文件会很容易。

  • 此文件应写入Oracle目录。
  • 向此目录中的数据库用户授予读取权限
  • 使用utl_file读取文件或将文件视为external table并将其作为视图公开
  • 安排常规操作系统作业以刷新或重建列表