batch-file-es Windows
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Un ejemplo más avanzado muestra cómo se puede usar la derivación en el ciclo FOR de un
conjunto restringido de archivos para redirigir la ejecución por lotes, mientras se guarda el
contenido buscado en un archivo:
@echo off
setlocal enabledelayedexpansion
for /f %%i in ('dir "%temp%\test*.log" /o:-d /t:w /b') do (
set "last=%temp%\%%i"
type !last! | find /n /i "Completed" >nul 2>&1 >> %temp%\Completed.log ^
&& (echo Found in log %%i & goto :end) || (echo Not found in log %%i & set "result=1"))
:: add user tasks code here
if defined result echo Performing user tasks...
:end
echo All tasks completed
exit /b
Tenga en cuenta el tiempo en que las cadenas de comando se dividen en varias líneas de código
y los grupos de comandos están separados por paréntesis
Visitar directorios de forma recursiva en un árbol de directorios
for /r comando for /r se puede usar para visitar recursivamente todos los directorios en un árbol
de directorios y ejecutar un comando.
@echo off
rem start at the top of the tree to visit and loop though each directory
for /r %%a in (.) do (
rem enter the directory
pushd %%a
echo In directory:
cd
rem leave the directory
popd
)
Notas:
• para / r - Recorrer archivos (subcarpetas Recurse).
• pushd - Cambie el directorio / carpeta actual y almacene la carpeta / ruta anterior para usar
con el comando POPD.
• popd : cambie el directorio de nuevo a la ruta / carpeta almacenada más recientemente por
el comando PUSHD.
Renombrando todos los archivos en el directorio actual
Lo siguiente usa una variable con un bucle for para renombrar un grupo de archivos.
SetLocal EnableDelayedExpansion
for %%j in (*.*) do (
https://riptutorial.com/es/home 68