Entonces, estoy estudiando un curso en línea que tiene cientos de sub conferencias. Necesito descargar el código fuente de cada conferencia en una subcarpeta correspondiente. Con más de 120 conferencias, crear una subcarpeta una por una es un proceso minucioso.
Aquí está mi estructura de carpetas actual:
¿Hay alguna manera de crear todas estas subcarpetas a la vez, junto con el nombre correcto, a través de un archivo por lotes o algo similar?
windows-7
windows
script
batch-file
Manish Giri
fuente
fuente


Respuestas:
¿Cómo puedo crear todas estas subcarpetas a la vez, usando mi esquema de nombres?
Para crear las subcarpetas (subdirectorios) en un directorio específico (que no es el directorio actual), puede realizar una de las siguientes acciones:
cd C:\Dropbox\Developmentprimero omd Lec-%%icomando amd C:\Dropbox\Development\Lec-%%i.Nota:
mkdires sinónimo demdy puede usarse en su lugar.A continuación muestro ambas alternativas, primero desde un
cmdshell (línea de comando), y segundo usando un archivo por lotes.Como beneficio adicional (aunque no se solicitó en la pregunta original) también hay una
bashalternativa de shell.De una
cmdconcha:o
De un archivo por lotes:
O
Notas:
9es el número de inicio Cambiar si es necesario.1Es el paso. No cambies esto.120El número final. Cambie, si es necesario, el número del último directorio que necesita.Para crear archivos en otro directorio, puede
cd C:\Dropbox\Development\Lec-%%iprimero omdcomando amd C:\Dropbox\Development\Lec-%%i.¿Hay alguna manera de hacer algo similar para Mac OSX desde el terminal Mac?
De una
bashconcha:O (para una versión más portátil)
Otras lecturas
fuente
C:\Dropbox\Developmenttuviera que crear las subcarpetas en un directorio específico, como , ¿necesitaríacdprimero ese directorio? ¿Asumiendo que estoy usando elcmdshell? Y muchas gracias!cda la carpeta.md Lec-%%iamd C:\Dropbox\Development\Lec-%%imdpor qué no usarmkdiren Windows? De esa manera es consistente con * nix y una diferencia menos para que la gente recuerde.Hay otra manera fácil, para un número limitado de carpetas. Puede ser útil aquí o para alguien más.
En Windows podemos crear nombres de carpetas numerados creando una carpeta "lec (1)" y copiar y pegarla cuantas veces queramos, si pegamos 10 veces habrá 11 carpetas con los nombres "lect (1)" a "lec ( 10) - Copiar "
El único truco aquí es que la primera carpeta debe incluir paréntesis (n), donde n es el número desde donde comienza la numeración.
Windows incluye "- copiar" en y del nombre de la carpeta pegada "lec (1) - Copiar" :(
Si no le gusta, simplemente seleccione todo y cambie el nombre de lec (1) -> lec- (1) o cualquier cosa.
Se ajustarán todos los nombres de las carpetas y se eliminará "- copy";)
fuente
Esto no será mejor que un script para su escenario particular, pero es bueno saber esto cuando los nombres de sus carpetas no están relacionados: puede crear múltiples directorios desde la línea de comandos separándolos por un espacio:
fuente
Puede encontrar que si crea carpetas numeradas con este nombre, no se mostrarán en el orden de clasificación adecuado (esperado):
El problema es que la parte del número de los nombres de las carpetas es de ancho variable, lo que afecta la forma en que se ordenan las carpetas.
Si es importante para usted que las carpetas estén ordenadas correctamente, use el archivo por lotes a continuación para crear carpetas con la parte numerada de los nombres de carpeta rellenados con "0" (ceros) para que todos los números tengan la misma longitud, de esta manera:
Aquí está el archivo por lotes:
fuente
Lec-10siguientesLec-9.2lo que se colocará antes de10lo que cabría esperar (si observa la captura de pantalla del OP, 9 también se ordena antes de la 10). Sólodirsufre de ese problema y las necesidades de0los acolchados, pero el PO no sabía mucho acerca de la línea de comandos, así que no creo que sea un problemadirlas carpetas de listas están fuera de servicio. Windows Como usted y un afrazier mencionaron, el Explorador de Windows ordenará / enumerará las carpetas correctamente, pero el OP estaba buscando unabatchsolución, lo que significa que (muy probablemente) trabajarán desde elcommand prompt.Puede ejecutar este archivo por lotes en la misma carpeta que los archivos. Cada archivo se moverá a una carpeta del mismo nombre.
Lo uso con una advertencia a continuación para evitar el uso accidental.
fuente
En primer lugar, no leí todo su problema ... pero, por lo que puedo entender, desea cambiar el nombre de las carpetas en función de la lista ... bueno, hay dos métodos
Método 1 : si no tiene una lista de carpetas ... hay una solución alternativa ... debe ir a macOS con este árbol de carpetas ... y simplemente copiar el árbol de carpetas completo ... Lo que hará macOS es que copien contenido así como la lista de todas sus carpetas en términos de lista también ... ahora pegue TextEdit o cualquier software similar al Bloc de notas.
-Ahora supongo que tiene esa lista de carpetas con usted ... solo necesita un software de terceros para hacer el trabajo (ahora todos los pasos son para Windows) https://www.rename-expert.com -En términos Para usar este software, tenía que crear una nueva carpeta, una nueva carpeta-2, una nueva carpeta-4 todo lo que quisiera.
-Ahora en Rename Expert hay una opción para renombrar carpetas desde la base de la lista.
-Boom estás listo.
Método 2: si desea crear una copia espejo de todo el árbol de carpetas sin archivos.
-Beyond Compare es el software que lo necesitas. https://www.scootersoftware.com/support.php?zz=kb_copyfolderstructure
fuente