Em zsh
:
open A000*.png([1,10])
para os primeiros 10.
Em bash
, você sempre pode fazer:
files=(A000*.png)
open "${a[@]:0:10}"
Ou em um loop:
while ((${#files[@]})); do
open "${files[@]:0:10}"
files=("${files[@]:10}")
done
Isso também funcionaria em zsh
, embora em zsh
você pudesse fazer isso com uma sintaxe um pouco menos difícil:
while (($#files)) {
open $files[1,10]
files[1,10]=()
}
Outra opção é usar xargs
:
printf '%sautoload zargs # in ~/.zshrc
zargs -n 10 A000*.png -- open
' A000*.png | xargs -0n10 open
Embora isso afete o stdin de open
. zsh
tem uma função zargs
com recursos semelhantes:
open() {
image_viewer $argv
read -q '?continue? ' || return 255
}
Isso permite que você defina o open
como uma função que precisa fazer o que quiser com esses 10 arquivos, como:
open A000*.png([1,10])