Red de conocimiento informático - Conocimiento del nombre de dominio - Solicitud urgente al maestro para que escriba un programa por lotes para clasificar archivos y asignarlos a diferentes carpetas según sus extensiones. ¡Gracias!

Solicitud urgente al maestro para que escriba un programa por lotes para clasificar archivos y asignarlos a diferentes carpetas según sus extensiones. ¡Gracias!

@echo?offamp;title?Ordenar archivos Script?By?YiMengQinYao

if?not?"~1"==""?set?str=1amp;goto?StartMe

:InputStr

set?str=

set/? p?str=Ingrese la ruta de la carpeta de origen (se admite arrastrar), ingrese para confirmar:

if?if?not?definido?str?call:NoDef?str

if?not?"str:~,1str:~-1" == """"?set?str=" str"

if?not?exist?str?call:NoExist?str

:StartMe

dir/ad?str?gt;nul?2gt; nul||llamada: NotDir?str

echo.

: Inputtgt

set?not?tgt?call: NoDef?tgt

si?not?"tgt:~,1tgt:~-1"==""""?set?tgt="tgt"

si?not?exist?tgt?call:NoExist ?tgt

dir/ad?tgt?gt;nul?2gt;nul||llamar: NotDir?tgt

llamar: Juntos?tgt?str

cls&echo? Procesando archivos relacionados, tenga paciencia. . . .

amp; echo.

::Establece varios sufijos de archivos y el nombre del directorio donde se almacena el tipo =====Begin=====

:Establece el documento. sufijos

set?Ext=*.txt, *.pdf, *.doc, *.xls

set?Typ=text

Llamar: mover

::Establecer sufijos de video

set?Ext=*.rm, *.rmvb

set?Typ=Video estándar

Llamar :Móvil

::Establecer sufijos de vídeo estándar

set?Ext=*..rm, *.rmvb

set?Typ=Video estándar

llamar: Mover

:: Establecer sufijo de vídeo HD

set?Ext=*.mp4, *.wmv, *.mkv, *.avi

set?Typ=Videollamada estándar

llamada: en movimiento

:: Establecer sufijo de vídeo HD

set?avi

set ?Typ=Video HD

set?Typ=Video HD

Llamar: Mover

: Establecer sufijo de video en movimiento

set?Ext=*.

set?Typ=Formato Móvil

Llamada: Móvil

::Establecer Sufijo Flash

set?Ext=*.rar , *.zip, *.cab, *.7z

set?Typ=Zip

Llamar: mover

: Establecer extensión zip

Llamar: Mover

:: Si necesita agregar, agregue de acuerdo con el formato anterior

:: Establezca el nombre del directorio de varios sufijos de archivos y tipos de almacenamiento ==== =Fin =====

echo.amp;echo? Todas las operaciones de clasificación están completas, presione cualquier tecla para salir.

pausegt;nul

salir

goto?: eof

: Mover

si?no?existe ?tgt:~,-1\Typ"?md?tgt:~,-1\Typ".

for?/?r?str?a?(Ext)?do?(

if?exist?tgt:~,-1\Typ~nxa"?(

set?n=1

llamar: FileExist?"~a"?tgt :~,-1\Typ\~nxa"

)?¿Else?

mover?tgt:~,-1\Typ\~nxa"gt;nul

)

)

goto?:eof

:FileExist

setlocal?EnableDelayedExpansion

if ?exist?"~dp2~n2!n!~x2"?(

set?/a?n =1

goto?FileExist

)? else?(

call: Msg?" ha ordenado "~nx2" como "!Typ!" y renombrado a "~n2!n!~x2"".

move ? "~1"?"~dp2~n2!n!~x2"gt;nul

)

endlocal

goto?:eof

: Msg

echo?~1

goto?: eof

: Juntos

echo?1|find? ~2"gt;nulamp;amp;goto?Error

goto?:eof

:NotDir

echo.echo?La ruta de configuración no es una carpeta , Restablezca.amp;ping??-n?"3"gt;nul

clsamp;goto?Input1

: NoExist

echo.amp; echo?"3"gt;nul

clsamp;goto?Input1

:NoDef

echo.amp;echo?Establezca la ruta de la carpeta de origen amp; ping?0?-n?"3"gt;nul

clsamp;goto?Input1

:.Error

echo.amp;echo?El objetivo La ruta establecida no puede estar en la carpeta de origen; restablezcala.amp;ping?0?-n?"3"gt;nul

clsamp;goto?