Necesito crear carpetas a partir de 00 a 99 (00, 01, 02, 03, etc.) en varios cientos de lugares. ¿Hay un solo comando de línea que me permita hacer eso?
17
La respuesta de mulaz es correcta, pero muchas personas dicen que seq
es malvada porque la mayoría de los proyectiles te permitirán hacer lo siguiente
mkdir {00..99}
Sin embargo, en algunas versiones anteriores de bash, 0-9
no están acolchadas, por lo que tendría que hacer
mkdir 0{0..9} {10..99}
¿Con esto bastará?
realiza un bucle para los números 0-99, y "-w" establece el ancho igual (0 relleno para 0-9)
fuente
seq -w 0 99 | xargs mkdir
También haría el trabajo.mkdir $(seq -w 0 99)
. O uso backticks en lugar de$()
, pero no puedo poner backticks debido a la sintaxis predeterminada del servidor.mkdir `seq -w 0 99`
(No pude evitar el espacio extra). Mira aquí , pero parece que el truco de incluir espacios en los delimitadores no funciona aquí.Sé que esto es viejo, pero mi recomendación sería:
porque yo en
seq -f %02g 0 99
; hacer mkdir $ i; hechoel -f% 02g asegura que permanezca al menos dos caracteres, como 00 o 99, y aún permitirá 3 números de caracteres más allá de 99, por lo que si tiene 100 no se convertirá en 001. Será 00-99 100 en lugar de 001- 100 como el -w hace.
fuente