Mostra la pàginaRevisions anteriorsQuè hi enllaçaExporta a PDFTorna dalt Aquesta pàgina és només de lectura. Podeu veure'n el codi font, però no podeu canviar-la. Consulteu el vostre administrador si penseu que això és degut a algun error. = Windows: CMD {{tag>windows}} * [[windows:links:start|]] == shutdown * restart: ''/r'' * shutdown: ''/s'' * force: ''/f'' * temporizador: ''/t <secs>'' (incluye ''/f'') * cancelar: ''/a'' * /via: [[https://www.howtogeek.com/512012/how-to-shut-down-your-windows-10-pc-using-command-prompt/]] == parámetros .bat [[https://ss64.com/nt/syntax-args.html]] * %1..%9 : parámetros por orden (solo se pueden referenciar 9 parámetros directamente) * %0 : pathname del propio script * %* : todos (hasta 255) * si el parámetro es un nombre de fichero, se pueden usar los siguientes modificadores: * %~f1 : path completo (unidad-carpetas-fichero ≡ fully qualified name) * %~d1 : unidad * %~p1 : carpetas * %~n1 : nombre archivo sin extensión ni path * %~x1 : extensión * %~s1 : modifica los modificadores f,n,s,x para usar nombres 8.3 * %~1 : elimina comillas exteriores * otras maneras: * set _string=%%###%%%_string%%%###%% * set _string=%_string:"%%###=%%% * set _string=%_string:%%###"=%%% * set _string=%_string:%%###=%%% * reemplazo de todas las comillas: * set _variable=%_variable:"=% * %~a1 : atributos * %~t1 : fecha/hora * %~z1 : tamaño * %%%~$PATH:1%% : busca en el PATH para expandir %%%1%% a path completo ≡ fully qualified name == fecha <code dos>set fecha=%date:~6,4%%date:~3,2%%date:~0,2%</code> == estructura FOR e IF (en este caso, usando el valor de las colunas del comando ''net use'' <code dos> for /F "tokens=1-3" %%a in ('net use') do ( if /i %%a==Disconnected net use /delete %%b if /i %%a==Unavailable net use /delete %%b ) </code> == recorrido de ficheros con "manipulación" * ojito a como se saca el nombre de la variable descartando la extensión - mirado en el ''help for'' de ms-dos * como se coge la columna que nos interesa <code dos> @echo off for /f "tokens=4" %%a in ('dir hesp*.dns') do ( rem echo %%~na nslookup -q=NS %%~na >> hesperia.txt ) </code> == ejecutar comando sobre una lista (de lo que sea) almacenada en un fichero "externo" * en este caso, nombres de máquinas <code dos lista.txt> agarcia pwillemsen bcarreno matorres apandoo pablo-perez </code> <code dos ejecuta-lista.bat> @echo off FOR /F "usebackq" %%I IN (lista.txt) DO ( rem PING -n 1 -w 100 %%I rem tasklist /s %%I /FI "IMAGENAME eq Skype" echo %%I tasklist /s %%I ) pause </code> == ejecutar comandos FTP * utilizar ''> ftp -s:comandosftp.txt <servidorftp> * hay que cambiar el <user> y <password> del fichero TXT <code dos comandosftp.txt> <user> <password> binary lcd d:\tmp\ftp-remoto cd tmp prompt off mget * bye </code> == ejecución secuencial ejecuta un programa GUI y al salir, ejecuta el **logoff** <code dos run.bat> rem /MAX: maximiza /WAIT: espera al cierre del programa start /D <PATH_FOLDER> /MAX /WAIT PROGRAM.EXE logoff </code> windows/cmd/start.txt Darrera modificació: 15/04/2025 01:39per mate