Назначение dcl из команды
Я новичок в DCL.
Я хочу получить результат команды в переменной и повторять результат один за другим.
filePath = dir / since = "time_now" [.SUBDIR] *. PNG / noheader / notrail
2 ответа
Это просто не то, как мы катимся с DCL.
Мы не делаем трубы, мы делаем, но не на самом деле.
DIR / SINCE = NOW... ничего не даст по определению, так как с тех пор ничего не существует.
Используйте /OUT, чтобы вставить вывод каталога в файл, а затем прочитать и проанализировать (F$PARSE и / или F$ELEMENT и / или F$LOC)
Проверьте HELP OPEN; ПОМОГИТЕ ЧИТАТЬ [/END]; ПОМОГИТЕ ЛЕКСИЧЕСКИМ
Гугл для примеров.
Более сложные сценарии DCL используют F$PARSE, F$SEARCH и F$FILE(файл,CDT), чтобы избежать активации изображений и создания временных файлов: $ HELP LEXICAL
Гугл для примеров. Проверить вчерашнюю запись в стек-обмен?!: OpenVMS - УДАЛИТЬ строку, если ТЕКСТ, как х
Но если вы только начинаете... ИМХО просто пропустите DCL и придерживайтесь PERL
$ perl -e "for (<[. SUBDIR] *. PNG>) {далее, если -M > 0,123; print; ... }"
Удачи! Hein
Топ:
file = f$search("[.subdir]*.PNG") if (file .eqs. "")then goto cont mtime=f$file_attribute(file,"RDT") if mtime.ges.build_start_time then - name=f>parse(file,,,"NAME") call CHECK "''name'" goto top
продолжение:
@ Hein, пожалуйста, просмотрите этот код и предложите изменения