
たとえば、
mkdir ~/{1,2,3}
ディレクトリを作成します~/1
。これは次のとおりです。~/2
~/3
mkdir ~/1
mkdir ~/2
mrdir ~/3
ただし、次の場合は同じ構文が使用されますCMD < argument >
。
brew {install, update, doctor}
...シェルの説明には言わないでください。これは次のことを意味しません。
brew install
brew update
brew doctor
すばやくスクリプトを作成するのは簡単ですが、なければならないBashで拡張または置換を使用する方が簡単な方法です。私は何を見逃していますか?
実行Bash 3.2.57(1)-release
対象OS X 10.10.2
答え1
xargs
あなたが望むようです:
echo install update doctor | xargs -n1 brew
答え2
最初のスペースを脱出し、残りのスペースを削除します。
$ printf "'%s'\n" brew\ {install,update,doctor}
'brew install'
'brew update'
'brew doctor'
brew
コマンドの場合は、次のようにしてください(スペースなし)。
brew {install,update,doctor}
mkdirの例と同じです。
mkdir {install,update,doctor}
これを行うために外部プロセスやパイプは必要ありません。すべての操作はシェル内で実行できますbash
。
答え3
どうですか(バックスラッシュに注意してください、非常に重要です):
echo brew\ {install,update,doctor}\;| bash
最初のパターン(のパラメータecho
)は次のように拡張されます。
echo brew install; brew update; brew doctor;
その後、これはエコーされ、次の出力を生成します。
brew install; brew update; brew doctor;
これを新しいbashインスタンスに転送します。