Código de Ms-Dos - Recupera Tipos

Imágen de perfil
Val: 20
Ha disminuido su posición en 2 puestos en Ms-Dos (en relación al último mes)
Gráfica de Ms-Dos

Recupera Tiposgráfica de visualizaciones


Ms-Dos

Publicado el 9 de Mayo del 2019 por Gabi
722 visualizaciones desde el 9 de Mayo del 2019
Recupera los diferentes tipos de archivos que hay dentro de un directorio (incluidos subdirectorios) y los extrae a un archivo ".TXT" ordenado alfabéticamente.

Requerimientos

ms-dos o windows con interprete de comandos

1.0

Publicado el 9 de Mayo del 2019gráfica de visualizaciones de la versión: 1.0
723 visualizaciones desde el 9 de Mayo del 2019
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
@echo off & SetLocal EnableDelayedExpansion
set /a total=0
set listaExtensiones[0]=""
 
REM Inicio del proceso
:: Recuperamos fecha y hora de inicio y se guarda en el fichero de salida
echo INICIO %date% %time% >> tipos_aux.txt
 
:: Recorre directorios/subdirectorios desde la raiz
for /r %%a in (.) do (
  :: Accede y almacena las rutas de directorios y subdirectorios a tratar
  pushd %%a
 
  :: Recorre los diferentes ficheros del directorio
  for %%b in ("*.*") do (
    call :getExtensiones %%b
  )
 
  :: Descarta las rutas almacenadas una vez tratadas
  popd
)
 
:: Muestra la lista de las diferentes extensiones de archivo
for /l %%n in (0,1,!total!) do (
   echo !listaExtensiones[%%n]! >> tipos_aux.txt
)
 
REM Fin del proceso
:: Recuperamos fecha y hora de fin y se guarda en el fichero de salida
echo FIN %date% %time% >> tipos_aux.txt
:: Ordena fichero
sort tipos_aux.txt > tipos.txt
:: Borra fichero auxiliar
del tipos_aux.txt
 
:: Finaliza el proceso
goto:EOF
 
:getExtensiones
set archivo=%1
set extension=%~x1
 
if not !extension!=="" (
  if !listaExtensiones[0]!=="" (
    set listaExtensiones[0]=!extension!
  ) else (
    set /a tratado=0
    for /l %%n in (0,1,!total!) do (
      if !listaExtensiones[%%n]!==!extension! set /a tratado=1
    )
 
    if !tratado!==0 (
      set /a total+=1
	  set listaExtensiones[!total!]=!extension!
    )
  )
)



Comentarios sobre la versión: 1.0 (0)


No hay comentarios
 

Comentar la versión: 1.0

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad

http://lwp-l.com/s5301