GNU/Linux >> Tutoriales Linux >  >> Linux

¿Crear numerosos directorios usando Mkdir?

Me gustaría crear muchos directorios usando mkdir . Cada nombre de directorio constará de un prefijo (una cadena) y un índice (un número entero). Supongamos que me gustaría que el prefijo fuera "s" y que los índices fueran del 1 al 50. Esto significa que me gustaría crear directorios titulados:

s1 , s2 , … , s49 , s50

¿Hay alguna manera de hacer esto automáticamente usando mkdir? ? Gracias por tu tiempo.

Respuesta aceptada:

Puede hacer esto con un script de shell.

Puro sh:esto funcionará incluso en shells Bourne anteriores a POSIX:

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

Si desea crear una gran cantidad de directorios, puede hacer que el script sea más rápido reduciéndolo a una sola llamada de mkdir así como el uso de componentes de shell para pruebas y aritmética. Así:

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 hacen mucho más fácil, pero debo señalar que esto no está integrado en mkdir y puede que no funcione en otros shells. Para casos más grandes, también puede verse afectado por los límites en el número o el tamaño total de los argumentos que se pueden pasar a un comando.

mkdir s{1..50}

Linux
  1. Cómo cargar o descargar archivos/directorios usando sFTP en Linux

  2. Cómo sincronizar directorios usando Lsyncd en Ubuntu 20.04

  3. Crear, eliminar y administrar directorios en Linux

  4. Creación de proxy web SOCKS mediante SSH

  5. Crear y eliminar archivos y directorios en Linux

Cómo crear directorios en Linux (comando mkdir)

Cómo crear un directorio en Linux usando el comando mkdir

Cómo sincronizar archivos y directorios usando Zaloha.sh

Cómo hacer una copia de seguridad de archivos y directorios usando Rsync en Linux

Comando mkdir:crear nuevos directorios en Linux

Cómo eliminar archivos y directorios usando la línea de comandos de Linux