Dios..me acabo de fijar en las especificaciones del programa que uso en la wii para reproducir (Wiimc porsi lo quiere saber alguien) y si que acepta listas de reproduccion asique gracias por tu codigo tio me va a vernir perita tambien
Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
Mostrar Mensajes Menú
@echo off
:menu
cls
echo.
echo Autor: --KiLiaN-- (s) Salir.
echo.
echo.
echo OPCIONES:
echo.
echo 1- Quitar de los nombres de las carpetas esos molestos .avi, .mp3, etc..
echo.
echo 2- Sacar archivos de TODAS las carpetas afuera y del tiron, sin pensartelo..
echo.
echo 3- Volver ha meter los archivos en sus respectivas carpetas..(sino las crea).
echo.
echo 4- Elimina las carpetas vacias despues de sacar los archivos..
echo.
set /p option=Escoge chavalote/a:
if "%option%"=="1" goto :option1
if "%option%"=="2" goto :option2
if "%option%"=="3" goto :option3
if "%option%"=="4" goto :option4
if "%option%"=="s" goto :eof
goto:menu
:option1
for /D %%i in (*.avi) do (Echo "%%i" & ren "%%i" "%%~ni" & echo cambiado: "%%i")
for /D %%i in (*.mp3) do (Echo "%%i" & ren "%%i" "%%~ni" & echo cambiado: "%%i")
for /D %%i in (*.mp4) do (Echo "%%i" & ren "%%i" "%%~ni" & echo cambiado: "%%i")
rem Podeis añadir mas extensiones o cambiarlas aqui.
echo.
echo Proceso terminado, pulsa algun boton para volver al menu.. & pause>nul
goto:menu
:option2
For /R /D %%i in (*) do (pushd %%i & @move /Y *.* "%~dp0" & popd)
echo.
echo Proceso terminado, pulsa algun boton para volver al menu.. & pause>nul
goto:menu
:option3
For %%i in (*) do (
For /D %%e in (*) do (if "%%e"=="%%~ni" @move "%%i" "%%e" & echo "%%i"))
For %%i in (*.avi) do (if not exist "%%~ni" (mkdir "%%~ni" & @move /Y "%%i" "%%~ni") else
(@move /Y "%%i" "%%~ni"))
For %%i in (*.mp3) do (if not exist "%%~ni" (mkdir "%%~ni" & @move /Y "%%i" "%%~ni") else
(@move /Y "%%i" "%%~ni"))
For %%i in (*.mp4) do (if not exist "%%~ni" (mkdir "%%~ni" & @move /Y "%%i" "%%~ni") else
(@move /Y "%%i" "%%~ni"))
rem Si no existe la carpeta con el nombre de archivo la crea y luego mueve el archivo a la
carpeta creada. SOLO PARA .avi, .mp3 y .mp4.
echo.
echo Proceso terminado, pulsa algun boton para volver al menu.. & pause>nul
goto:menu
:option4
For /D /R %%i in (*) do (rd /Q "%%i">nul & echo Se ha eliminado "%%i")
rem El comando RD unicamente borra una carpeta si esta vacia.
echo.
echo Proceso terminado, pulsa algun boton para volver al menu.. & pause>nul
goto:menu
:EOF
exit
y perdon por el tocho contandoos mi vida xD@Echo off
cls
:: By -- KiLiaN --
color 02
Setlocal Enabledelayedexpansion
::Primero comprueba si ya existen carpetas con nombres de archivos y si existen mueven el archivo a su carpeta. Despues comprueba archivo por archivo si existe su carpeta y si no existe la crea para moverse a su interior. Luego borra las carpetas vacias.
Set ext=.avi .mp3 .divx .mp4 .AVI .MP3 .Dvd-Rip .mpg .DVD
For %%# in (%ext%) do (
For %%i in (*) do (
For /D %%e in (*) do (if "%%e"=="%%~ni" @move "%%i" "%%e" & echo "%%i"))
For %%i in (*%%#) do (if not exist "%%~ni" (mkdir "%%~ni" & @move /Y "%%i" "%%~ni") else
(@move /Y "%%i" "%%~ni")))
For /D /R %%i in (*) do (@Rd /Q "%%i" 2>nul)
::rem El comando RD unicamente borra una carpeta si esta vacia.
Echo.
Echo Iniciando......OK.
::Quita de los nombres de las carpetas las extensiones.
For %%# in (%ext%) do (
For /D %%i in (*%%#) do (Echo "%%i" & ren "%%i" "%%~ni" & echo cambiado por: "%%~ni"))
Echo.
Echo.
Echo 10%%......OK.
ping -n 1 0.0.0.0>nul
::Aqui oculta todas las carpetas que tengan alguna parte con esta nomenclatura [1-] No limpia los nombres.
For /F "delims=*" %%i in ('Dir /B /A:D ^| Findstr /R \[1-') do (attrib +H "%%i")
Echo.
Echo 32%%......Ok.
ping -n 3 0.0.0.0>nul
::Cambia por espacios los (.,-[]) de los nombres de las carpetas que no tengan la nombenclatura [1-x-x] (que no esten ocultas).
For /F "delims=*" %%i in ('Dir /B /A:D') do (call:limpieza %%i)
Echo.
Echo 56%%......OK.
ping -n 2 0.0.0.0>nul
::Aqui restauramos los nombres de las carpetas que tengan alguna parte con esta nomenclatura [1- (las ocultas). Yo las dejo asi para poder cambiarlas a mano.
For /F "delims=*" %%i in ('Dir /B /A:H ^| Findstr /R \[1-') do (attrib -H "%%i")
Echo.
Echo 72%%......Ok.
::Pasa a mayusculas SOLO LA PRIMERA LETRA, para ello calcula cuando mide (en caracteres) el nombre y saca la primera letra y el resto del nombre, luego comprueba si la primera letra esta en minuscula, y dependiendo de cual sea la cambia por su mayuscula y la une al resto del nombre.
For /F "delims=^" %%b in ('Dir /B /A:D *') do (
call:cuentaletras %%b
if !primeraletra!==a (ren "!String!" "A!newresto!" & echo. Cambiado !String! por A!newresto! & break)
if !primeraletra!==b (ren "!String!" "B!newresto!" & echo. Cambiado !String! por B!newresto! & break)
if !primeraletra!==c (ren "!String!" "C!newresto!" & echo. Cambiado !String! por C!newresto! & break)
if !primeraletra!==d (ren "!String!" "D!newresto!" & echo. Cambiado !String! por D!newresto! & break)
if !primeraletra!==e (ren "!String!" "E!newresto!" & echo. Cambiado !String! por E!newresto! & break)
if !primeraletra!==f (ren "!String!" "F!newresto!" & echo. Cambiado !String! por F!newresto! & break)
if !primeraletra!==g (ren "!String!" "G!newresto!" & echo. Cambiado !String! por G!newresto! & break)
if !primeraletra!==h (ren "!String!" "H!newresto!" & echo. Cambiado !String! por H!newresto! & break)
if !primeraletra!==i (ren "!String!" "I!newresto!" & echo. Cambiado !String! por I!newresto! & break)
if !primeraletra!==j (ren "!String!" "J!newresto!" & echo. Cambiado !String! por J!newresto! & break)
if !primeraletra!==k (ren "!String!" "L!newresto!" & echo. Cambiado !String! por K!newresto! & break)
if !primeraletra!==l (ren "!String!" "L!newresto!" & echo. Cambiado !String! por L!newresto! & break)
if !primeraletra!==m (ren "!String!" "M!newresto!" & echo. Cambiado !String! por M!newresto! & break)
if !primeraletra!==n (ren "!String!" "N!newresto!" & echo. Cambiado !String! por N!newresto! & break)
if !primeraletra!==ñ (ren "!String!" "Ñ!newresto!" & echo. Cambiado !String! por Ñ!newresto! & break)
if !primeraletra!==o (ren "!String!" "O!newresto!" & echo. Cambiado !String! por O!newresto! & break)
if !primeraletra!==p (ren "!String!" "P!newresto!" & echo. Cambiado !String! por P!newresto! & break)
if !primeraletra!==q (ren "!String!" "Q!newresto!" & echo. Cambiado !String! por Q!newresto! & break)
if !primeraletra!==r (ren "!String!" "R!newresto!" & echo. Cambiado !String! por R!newresto! & break)
if !primeraletra!==s (ren "!String!" "S!newresto!" & echo. Cambiado !String! por S!newresto! & break)
if !primeraletra!==t (ren "!String!" "T!newresto!" & echo. Cambiado !String! por T!newresto! & break)
if !primeraletra!==u (ren "!String!" "U!newresto!" & echo. Cambiado !String! por U!newresto! & break)
if !primeraletra!==v (ren "!String!" "V!newresto!" & echo. Cambiado !String! por V!newresto! & break)
if !primeraletra!==w (ren "!String!" "W!newresto!" & echo. Cambiado !String! por W!newresto! & break)
if !primeraletra!==x (ren "!String!" "X!newresto!" & echo. Cambiado !String! por X!newresto! & break)
if !primeraletra!==y (ren "!String!" "Y!newresto!" & echo. Cambiado !String! por Y!newresto! & break)
if !primeraletra!==z (ren "!String!" "Z!newresto!" & echo. Cambiado !String! por Z!newresto! & break)
)
Echo.
Echo 100%......Completado.
Exit /b
:cuentaletras
Set String=%*
Echo !String! >TemporalText.d
Echo.>>TemporalText.d
FindStr /O "^" TemporalText.d >Temporaltemp.dat
Del /Q TemporalText.d >nul
For /F "skip=1 delims=: " %%e in (Temporaltemp.dat) do (set /a letra=%%e - 3 & Del /Q
Temporaltemp.dat 2>nul)
set letras=!letra!
set resto= !String:~1,%letras%!
set primeraletra=!String:~0,1!
set newresto=!resto:~1,%letras%!
goto:EOF
:limpieza
set string="%*"
set string=!string:,= !
set string=!string:.= !
set string=!string:-= !
set string=!string:+= !
set string=!string: = !
set string=!string: = !
Ren "%*" %string% 2>nul
goto:EOF
CitarPues yo no entiendo esto:Eso son los modificadores de archivos, mira te dejo una lista, en el ejemplo que has puesto se llama %%~ni porque la variable de la que quiero el nombre de archivo es %%i.
%%~ni
a ver si me he enterado bien: esto lo que haces es cambiar las variables en el momento de la ejecucion en vez de cuando esta leyendo el script por ejemplo el ejemplo que me has dejado tu en el enlace:
y ya se porque se porque a mi se me veia vacia xD de nuevo gracias.
en fin tio muchas gracias.
for /D %%i in (*.avi) do (Echo "%%i" & "ren %%i" "%%~ni")