запись вывода команды qshell (qsh) в локальную область данных - PullRequest
0 голосов
/ 06 мая 2010

Я хочу записать вывод команды qshell в локальную область данных, чтобы она могла использоваться программами глобально. Есть какой-то способ записи из файла stdout в локальную область данных. Я хочу, чтобы это было сделано через CL. .its срочно спасибо

Ответы [ 4 ]

1 голос
/ 12 мая 2010
QSH CMD('system chgdtaara dtaara\(qgpl/dataarea\) value\($(echo test)\)')
0 голосов
/ 26 сентября 2015
QSH CMD('A=`cat /tmp/mlco02.txt | wc -l`;exit $A')
RCVMSG     MSGTYPE( *LAST ) RMV( *NO ) MSGDTA( &MSGDTA ) + 
           MSGID( &MSGID )                                 
           IF ( &MSGID *EQ 'QSH0005' )  DO                 
              CHGVAR &EXITSTS %BIN( &MSGDTA 1 4 )          
ENDDO
0 голосов
/ 18 декабря 2014

использовать iSeries dtarea построить как:

wc -l /tmp/mlco02.txt | datarea -w /qsys.lib/qgpl.lib/robtest.dtaara      

область данных qgpl/robtest ранее создана

В этом случае мне нужно было количество строк (записей) файла IFS, чтобы CLp мог его получить и разбить большие файлы.

0 голосов
/ 04 августа 2010

Не думаю, что вы можете обновить * LDA из qshell ... поскольку команды, проходящие через него, я думаю, находятся в отдельном задании.

Возможно, вы захотите использовать именованную очередь данных ... вы можете использовать команду dataq из qshell.

Вероятно, было бы лучше использовать очередь данных с ключами ... но я не уверен, как бы вы указали ключ в команде dataq.

...