uux - リモート UUCP システムでのコマンド実行を要求する

形式

uux [–bCcjnprz] [–g grade] [–x debug_level] [site!] commandstring

説明

uux は、commandstring が他のサイトで実行されることを指定します。コマンドを実行するのに必要なファイルが異なったサイトにあれば、uux は UUCP を出してファイルを 1 つの場所に集め、コマンドを実行し、コマンドの標準出力を指定されたサイトのファイルに送ります。

commandstring はリモート・サイトで有効な任意のコマンドです。コマンドおよびファイル名によって UUCP 方式でサイトを指定できる場合を除いて、次の引数を指定します。
site1!command site2!file1
ここで、site1 はコマンドを実行するサイトの名前、site2file1 が入っているサイトの名前です。
  • サイト名を 1 つも指定しないと、コマンドとすべてのファイルは こちらのサイトにあるものと想定されます。
  • コマンドのためのサイトを指定し、ファイルのためのサイトを指定 しなかった場合は、ファイルは、コマンドのために指定されたのと同じ サイトにあるものと想定されます。
  • いくつかのファイルにだけサイトを指定すると、サイトの 指定のないファイルは、指定されたサイトと同じサイトにあるものと想定されます。
siteuuname コマンドでリストされる有効な サイト名である必要があります。uux
では、site1!site2!command ま たは site1!site2!file などのように複数の サイト名を指定することはできません。

コマンドをパイプ接続することはできますが、パイプラインの最初の コマンドだけがサイト名を指名できます。パイプライン内のその他のコマンドはすべて、最初のコマンドに指定されたサイトで行われます。

ファイル名は、次の形式のいずれかにすることができます。
  • 絶対パス名
  • 前に ~name/ が付いたパス名 (ここで、 ~name は、指定されたサイトでは、ユーザー name のログイン・ディレクトリーによって置き換えられます)。
  • 前に ~/ が付いたパス名 (ここで、~/ は、指定されたサイト では、公用 UUCP ディレクトリーの名前で置き換えられます)。
  • 使用しているマシンの現行ディレクトリーを接頭部として含む ファイル名または接頭部名。
uucp の引数とは異なり、パス名には シェル・メタキャラクター ?、*、および [ ] を含めることはできません。

非ローカルのファイル名はそのコマンドの中では固有でなければなりません。固有でないと、コマンドは失敗します。これは、非ローカル・ファイルはリモート・サイトの作業ディレクトリーにコピーされるからです。ファイル名が固有でないと、前のファイルは別のファイルによって上書きされます。

コマンドが失敗すると、電子メールの通知が届きます。

オプション

–b
入力をユーザーにメールして戻します。コマンドが失敗すると、stdin の内容がユーザーに送り戻されます。
–C
指名のファイルを、転送のためにスプール・ディレクトリーに コピーします。このオプションと –c オプションの両方を指定すると、この オプションが優先します。このオプションが役立つのは、uux を実行した後にファイルに変更を加えるが、ファイルは変更する前の状態で送信したい場合です。
–c
転送のためにスプール・ディレクトリーにファイルをコピーしません。これはデフォルトです。
–g grade
このジョブの優先順位を grade に設定します。これは数字 (0 ~ 9) または文字 (A ~ Za ~ z) で、0 が最高の優先順位、z が最低の優先順位です。
–j
UUCP ジョブ ID 番号を標準出力に渡します。このジョブ ID は、ジョブの状況を判別したり、ジョブを終了するために uustat と共に使用することができます。uux 要求が複数のジョブ ID を生成した場合は、最後のものだけが示されます。
–n
コマンドが失敗しても、メールを送信しません。
–p
uux の標準入力を指定されたコマンドの標準入力として 使用します。この入力は、一時ファイルに格納され、コマンドの実行時にコマンドに 渡されます。
–r
後に処理するジョブをキューに入れます。ファイルの転送を開始するための uucico は開始しません。
–x debug_level
デバッグ情報の冗長度合いを指定の debug_level に 設定します。レベルは数字で、0 またはそれ以上です。レベル 0 は簡略メッセージを、また、レベル 9 は詳細なメッセージを提供します。9 より大きい値を指定しても、情報は追加されません。 デフォルトはレベル 0 です。
–z
uux コマンドを出したユーザーに成功したという通知を戻します。

リモート・サイトのコマンドは実際には、それ自体の ディレクトリー /usr/spool/uucp/.Xqtdir の 中の uuxqt によって実行されます。

特殊文字

uux に渡されるコマンド・ストリングは、シェル・メタキャラクター <>;、 および を使用できます。これらの文字のいずれかが宛先システムのコマンド・インタープリターで無効な場合は、コマンドは失敗します。

2> などのようにさらに複雑なリダイレクトは、uux では処理されません。これは、2 が直前の コマンドに対するパラメーターであると解釈されるためです。リストされている単純なメタキャラクターだけが使用できます。

ファイル名または引用符付きストリングをエスケープするためには、括弧を使用してください。括弧を使用すると、ファイル名は、uux による特別な解釈を施されず にリモート・サイトのコマンドに渡されます。例えば、以下のコマンドでは、「hello」は、括弧で囲まなければファイルとして扱われ るので、ユーザーが期待したことは行われません。
uux "Remote!echo hello >test.out"
このコマンドを入力する正しい方法は、次のとおりです。
uux "Remote!echo (hello) >test.out"

  1. 近隣サイトの south が文書の印刷とフォーマット設定 のために laser というプログラムを持っていたとします。この場合、ユーザーは laser に対する実行許可を持っているものとします。south の公用 UUCP ディレクトリー内のファイ ル inventor.ysouthlaser プログラム を使用して印刷するには、次のようにします。
    uux south!laser ' ~/inventor.y'

    波形記号にはシェル拡張からの保護が必要です。

    ユーザーの公用 UUCP ディレクトリー内のファイル report.001 を印刷するには、次のように指定します。
    uux south!laser ! ~/report.001
  2. south において uucp のための実行許可を持っている とします。southuucp を使用して、その公用 UUCP ディレクトリー から、south の近隣サイトである west に ファイル index を コピーすることを要求する場合は、次のようになります。
    uux south!uucp ¥(~/index¥) ¥(west! ~/¥)
    引数の ~/indexwest! ~/ は、括弧で囲まれているため、uux では解釈されません。円記号は、z/OS シェルで括弧をエスケープするために必要です。

セキュリティー

uux はシステムにとってセキュリティー上のリスクをもたらす可能性があります。UUCP では、各リモート・サイトで実行可能なコマンドを指定できるように することによって、このリスクを小さくしています。詳しくは、「z/OS UNIX System Services 計画 」の許可ファイルに関するセクションを参照してください。

電子メールの場合は、各リモート・サイトは、こちら側のサイトで メール経路指定エージェントを実行できる必要があります。その他の許可については、ユーザーの裁量で付与することができます。

ローカライズ

uux は、以下のローカライズ環境変数を使用します。
  • LANG
  • LC_ALL
  • LC_CTYPE
  • LC_MESSAGES

詳しくは、ローカライズを参照してください。

ファイル

uux は、以下の構成ファイルを使用します。
/usr/lib/uucp/config
UUCP 構成ファイル
/usr/spool/uucp/site
UUCP ホスト・サイトのための待機ジョブ要求、作業ファイル、データ・ファイル、および実行ファイルを含んでいるサブディレクトリー。
/usr/spool/uucp/LOGFILE
uux のログ・ファイルおよび他の UUCP ユーティリティー。
/usr/spool/uucp/.Sequence/sitename
最後にキューに入れられたジョブの 4 桁のシーケンス番号を含むシー ケンス・ファイル。uux がシーケンス番号を必要とする場合、シーケンス番号 はこのファイルの値に基づきます。このファイルがなければ、uux はファイルを シーケンス番号 0000 として作成します。sitename はリモート・サイトの名前です。各リモート・サイトは、それ自体の シーケンス番号を持ちます。

終了値

0
正常終了
1
以下のいずれかによる失敗。
  • 引数リストが長すぎる
  • ログ・ファイルを開くことができない
  • メモリーが不足している
2
無効なコマンド行オプション

移植性

POSIX.2, X/Open 移植性ガイド, UNIX システム.

–g–p–r、および –x オプションは、POSIX 標準の拡張です。これらのオプションは、他の UNIX UUCP インプリメンテーションとの互換性 のために保持されています。

関連情報

uucc, uucico