No comentário você confirma que uma linha de comando como
tools/uploader.py --port=/dev/tty.usbmodem2 --port=/dev/tty.usbmodem3 Images/image.file
está funcionando. Para escrever uma resposta mais geral, eu a derreto para
echo foo --bar=file2 --bar=file3 ...
que todos podem testar com copy & colar. Então, eu tenho duas abordagens zshishish em mente.
-
Use o esquema de construção
fileN
ondeN
é um número que começa em 2 até digamos 5. Então você pode usar a expansão de contraventamento:$ echo foo --bar=file{2..6} foo --bar=file2 --bar=file3 --bar=file4 --bar=file5 --bar=file6
Isso não importa se
fileN
é realmente um arquivo ou se ele existe. É só um texto. -
Use o qualificador glob
P
, que adiciona uma sequência (delimitada por:
) ao resultado de um padrão de globbing (file*
):$ echo foo file*(P:--bar:) foo --bar file1 --bar file2 --bar file3 --bar file4 --bar file5 --bar file7
eu. e. o resultado depende de quais arquivos existem, no meu exemplo
file1
tofile5
efile7
.Mas, espere, você quer excluir
file1
, então modifique o padrão glob parafile(^1)
, que é a abreviação defile(*^1)
e deve ser lido comofile*
mas não (^)file1
:$ echo foo file(^1)(P:--bar:) foo --bar file2 --bar file3 --bar file4 --bar file5 --bar file7
Ou use
file<2->
, que corresponde afile2
em diante:$ echo foo file<2->(P:--bar:) foo --bar file2 --bar file3 --bar file4 --bar file5 --bar file7
Esteja ciente de que esse qualificador glob insere um espaço após o prefixo. Isso pode ser um problema, mas eu queria incluir essa abordagem também, porque geralmente é muito útil.