GNU/Linux >> Linux Esercitazione >  >> Linux

Creazione di numerose directory utilizzando Mkdir?

Vorrei creare molte directory usando mkdir . Ogni nome di directory sarà composto da un prefisso (una stringa) e un indice (un numero intero). Supponiamo che io voglia che il prefisso sia "s" e che gli indici vadano da 1 a 50. Ciò significa che vorrei creare directory intitolate:

s1 , s2 , … , s49 , s50

C'è un modo per farlo automaticamente usando mkdir ? Grazie per il tuo tempo.

Risposta accettata:

Puoi farlo con uno script di shell.

Pure sh:funzionerà anche su shell Bourne pre-POSIX:

n=1;
max=50;
while [ "$n" -le "$max" ]; do
  mkdir "s$n"
  n=`expr "$n" + 1`;
done

Se vuoi creare un numero elevato di directory, puoi rendere lo script più veloce riducendolo a una singola chiamata di mkdir oltre a utilizzare i built-in della shell per i test e l'aritmetica. In questo modo:

n=1
max=50
set -- # this sets [email protected] [the argv array] to an empty list.

while [ "$n" -le "$max" ]; do
    set -- "[email protected]" "s$n" # this adds s$n to the end of [email protected]
    n=$(( $n + 1 ));
done 

mkdir "[email protected]"

Zsh, ksh93 o bash lo rendono molto più semplice, ma devo sottolineare che questo non è integrato in mkdir e potrebbe non funzionare in altre shell. Per casi più grandi, può anche essere influenzato da limiti al numero o alla dimensione totale degli argomenti che possono essere passati a un comando.

mkdir s{1..50}

Linux
  1. Come crittografare e decrittografare file e directory utilizzando Tar e OpenSSL

  2. Come caricare o scaricare file/directory utilizzando sFTP in Linux

  3. Creazione di proxy Web SOCKS tramite SSH

  4. Creazione di una variabile utilizzando il valore della variabile come parte del nuovo nome della variabile?

  5. È possibile creare cartelle in modo ricorsivo usando lo script di shell?

Come creare directory in Linux (comando mkdir)

Come creare una directory in Linux usando il comando mkdir

Come sincronizzare file e directory utilizzando Zaloha.sh

Come eseguire il backup di file e directory utilizzando Rsync in Linux

Comando mkdir:crea nuove directory in Linux

Come eliminare file e directory utilizzando la riga di comando di Linux