異なるパラメータを使用して同じコマンドを実行する

異なるパラメータを使用して同じコマンドを実行する

私が使用できるあまり寛大なプログラムがあります。残念ながら、このプログラムは次のことを許可しません。

"command -a -b -c"

または

"command -abc"

したがって、常に次のように入力する必要があります。

command -a && command -b && command -c

入力するより効率的な方法があると確信していますが、理解することはできません。

ベストアンサー1

次のことができます。

echo -a -b -c | xargs -n 1 command

または:

xargs -n1 command <<< '-a -b -c'

そして少し殻。

しかし、それが影響を与えることに注意してくださいcommand

そしてzsh

autoload zargs # best in ~/.zshrc
zargs -n 1 -- -a -b -c -- command

または簡単に:

for o (-a -b -c) command $o

呼び出しが失敗すると、呼び出しはcommand中断されません(終了状態255で失敗しない限り)。

これを行うには、次のものが必要です。

for o (-a -b -c) command $o || break

それでも$?失敗した呼び出しの終了ステータスに達しませんcommand。次のように変更できます。

(){for o (-a -b -c) command $o || return}

しかし、それまでは次より長くなりました。

command -a && command -b && command -c

おすすめ記事