2010年6月30日水曜日

system = OSのコマンドを実行して、終了コードを返す - AWK

AWKの入出力関数とコマンド実行機能
○Gawk on Windows ○Gawk ○mawk32 ×Mawk ○awk
OSのコマンドを実行して、終了コードを返します。

**** 書式
--------
system( [実行するコマンド] )
--------

o 実行するコマンド -- 文字列の形で指定します。


**** 使用例(Windowsの場合)
o UNIXの方は、"date /t"の部分を、"ls"などに置き換えてみて下さい。
--------
BEGIN {
  v = system("date /t");
  print "コマンドのリターンコード = (" v ")";
}
--------

o 行末のセミコロンは、C言語の書き方に合わせました。無くても動きます。


**** 機能
o OSのコマンドを実行して、終了コードを返します。
o 但し、systemをサポートしていない処理系があります。
   + Mawk for Windows 1.3.3では、実行せずに、終了コード(127)を返します。(= Windows XP SP3で確認)


**** メモ
o コマンドを実行する方法は、他にもあります。getlineでパイプを実行する方法です。


**** 確認した処理系
o Gawk on Windows 3.1.7
o Gawk for Windows 3.1.6
o mawk MBCS (32bit版) 1.3.3
o Mawk for Windows 1.3.3 -- 非対応
o original = the one true awk(updated May 1, 2007)


==
関連ページ:
    ▼AWKの入出力関数とコマンド実行機能▼ABC順
    ▼AWKプログラムを書く▼ABC順
    ▼AWK
    ▼制作メモ
    > $0 = 最後に読み込んだデータ、1行分
    $1 = 最後に読み込んだデータの1列目
    NF = 最後に読み込んだ行の列数
    +
    exit = 終了する