apply コマンド
目的
1 セットのパラメーターにコマンドを適用します。
構文
説明
apply コマンドは、CommandString パラメーターに指定されたコマンド文字列を、Parameter パラメーターに指定された各値に対して順番に実行します。 通常、Parameter の値は個々に選択されます。オプションの -Number フラグは、指定されたコマンド文字列に渡される Parameter 値の数を指定します。 Number 変数の値が 0 の場合は、コマンド文字列は、パラメーターを使わずに、それぞれの Parameter ごとに一度ずつ実行されます。
CommandString に %n のフォーマット (n は 1 から 9 の数字) の文字シーケンスを含めた場合は、コマンド文字列の実行時に、CommandString パラメーターのあとの n 番目の未使用の Parameter 値で置換されます。 このようなシーケンスがあると、apply コマンドは -Number フラグを無視し、CommandString に渡されるパラメーターの数は、CommandString パラメーター内の n の最大値となります。
% (パーセント記号) 以外の文字を指定して、 -a 値 フラグでパラメーター置換文字ストリングを指定することができます。以下に例を示します。-a@これは、シーケンス @1 および @2 が、 CommandString パラメーターに続く 1 番目と 2 番目の未使用パラメーターに置き換えられることを示します。
注:
- CommandString 内のパターン・マッチング文字は望ましくない影響を与える可能性があるため、複雑なコマンドは '' で囲むことをお勧めします。 (単一引用符)。
- -a 値 フラグを使用せずに、リテラル% (パーセント記号) の直後に任意の数値を渡すことはできません。
フラグ
| 項目 | 説明 |
|---|---|
| -a 値キャラクター | パラメーター置換文字列を指定する 1 文字 (% 以外) を指定します。 |
| -数値 | 実行されるたびに CommandString に渡されるパラメーターの数を指定します。 |
例
- LS コマンドの結果と同様の結果を得るには、次のように入力します。
apply echo * - a1 という名前のファイルを b1という名前のファイルと比較し、 a2 という名前のファイルを b2という名前のファイルと比較するには、次のように入力します。
apply -2 cmp a1 b1 a2 b2 - 対象者 コマンドを 5 回実行するには、次のように入力します。
apply -0 who 1 2 3 4 5 - 現行ディレクトリー内のすべてのファイルをディレクトリー /usr/joeにリンクするには、次のように入力します。
apply 'ln %1 /usr/joe' *