Com expansão de chaves.
mkdir gallery{1..50}
No meu cenário, tenho algumas fotos e quero mantê-las separadas. No momento, estou fazendo mkdir gallery1 gallery2 gallery3 gallery4 gallery5 gallery6
, mas isso é uma dor. Eu acho que podemos fazer isso mais facilmente. Suponha que eu queira criar diretórios de galeria7 para galeria50 . Como eu faria isso?
Enquanto já existem boas respostas, e você já começou, eu vou jogar o meu de qualquer maneira.
Eu sempre prefiro fazer arquivos sequenciados numericamente com zeros à esquerda, assim:
mkdir $(printf "gallery%02d\n" {1..50})
Isso lhe dará diretórios gallery01
a gallery50
. Isso ajuda a mantê-los bem alinhados e na ordem correta ao ordenar.
Como a expansão da chave brace não é suportada por todos os shells, você também pode usar seq
do coreutils
:
for i in $(seq -w 1 50)
do
mkdir "gallery$i"
done
A opção -w
é para largura igual , isto é, criando galeria01 , galeria02 etc.
Você pode usar a expansão de chaves em um script bash. A seguir cria os diretórios gallery7 para gallery50 no diretório atual:
#!/bin/bash
for i in {5..70}
do
mkdir "gallery$i"
done
Tente primeiro com o que será resolvido:
seq -f 'mkdir gallery%g' 50
antes de enviar a saída para o shell com:
seq -f 'mkdir gallery%g' 50 | sh
Isso cria pastas com um zero inicial:
seq -f 'mkdir gallery%02g' 50 | sh