【问题标题】:Iterate with files in Openvms DCL使用 Openvms DCL 中的文件进行迭代
【发布时间】:2016-10-11 06:36:08
【问题描述】:

我有这个文件input.text 说 20 行。 (虽然我希望能够使用任意数量的行)

所以我想打开上述文件并使用每个字符串,就好像它是另一个命令的参数一样。

另一个命令将获取每个参数执行其功能,然后将输出写入另一个文件本身。

我怎样才能达到预期的目的?

【问题讨论】:

  • 看看OPENREADIFGOTOCLOSE
  • >>> 说 20 行。 (尽管我希望能够使用任意数量的行)-> 行数不相关,open log input.txt 是标签循环,read/end=end log line 然后是goto loop,您可以读取文件,不管行数多少(添加一个标签结束,你close log

标签: parameters openvms dcl


【解决方案1】:

这是一个示例 DCL 命令文件,它读取 INPUT.TXT 并将找到的行用作 DIR 命令的参数,该命令输出到名为 DIROUT.TXT 的文件:

$! Read file using results as DIR command parameters...
$ file1="INPUT.TXT"
$ file2="DIROUT.TXT"
$ open/read chnl1 'file1'
$ on control_y then goto done_loop
$ on error then goto done_loop
$read_loop:
$ read/end_of_file=done_loop chnl1 opt1
$ write sys$output ">>> Sending DIR ",opt1," output to ''file2'..."
$ dir/out='file2' 'opt1'
$ goto read_loop
$done_loop:
$ close chnl1
$ write sys$output "Finished..."
$ EXIT

您应该能够根据自己的要求进行调整。

【讨论】:

  • 不错!谢谢@DennisP。我只是将它作为 DCL 世界的起点:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-12-20
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多