$ZF(-1) で実行したコマンドの出力を取得することはできますか?

※注意※
$ZF(-1)および$ZF(-2)には、セキュリティ上の脆弱性があり、その使用が推奨されておりません。
代替の機能として$ZF(-100)が用意されておりますので、そちらをご使用ください。
$ZF(-100)の詳細は、関連トピックをご参照下さい。

ーーーーーーーーーーーーーーー

$ZF(-1) では実行したコマンドの出力を取得することはできませんが、代わりにコマンド・パイプ デバイスを使用する方法があります。以下ドキュメントをご参照ください。
コマンド・パイプ デバイスを使用する方法について

これを %File クラスで使用した例が以下になります。

USER>kill
USER>set cmd=##class(%File).%New("netstat -anp tcp")
USER>write cmd.Open("rq")
1
USER>while 'cmd.AtEnd { write !,cmd.ReadLine() }
アクティブな接続
  プロトコル  ローカル アドレス          外部アドレス        状態
  TCP    0.0.0.0:23             0.0.0.0:0              LISTENING
  TCP    0.0.0.0:80             0.0.0.0:0              LISTENING
(中略)
  TCP    192.168.172.1:139      0.0.0.0:0              LISTENING
USER>

該当する製品: Caché, Ensemble, HealthShare/Caché Based, IRIS Data Platform, HealthShare/IRIS Based, IRIS for Health
関連トピック: $ZF(-1)の戻り値に -1 が返って実行できません。なぜですか?
関連トピック:$ZF(-100)の使用方法を教えてください
添付ファイル:

アンケートにご協力をお願いします
このトピックは参考になりましたか?
このトピックに関するお問い合わせ

FAQトップに戻る