Você poderia fazer:
echo -a -b -c | xargs -n 1 command
Ou:
xargs -n1 command <<< '-a -b -c'
com algumas conchas.
Mas cuidado, pois isso afeta o status de command
.
com zsh
:
autoload zargs # best in ~/.zshrc
zargs -n 1 -- -a -b -c -- command
Ou simplesmente:
for o (-a -b -c) command $o
Nenhum desses abortaria se alguma das invocações de command
falhasse (exceto se falhasse com o status de saída 255).
Para isso, você deseja:
for o (-a -b -c) command $o || break
Isso ainda falha no $?
do status de saída da falha command
invocation). Você poderia mudar isso para:
(){for o (-a -b -c) command $o || return}
Mas, nessa altura, já é mais do que:
command -a && command -b && command -c