msdos

propósito

  • Notas sobre comandos y otras utilidades en ms dos.

crear enlaces simbólicos

  • mklink /d "c:\enlaces\notas-programacion" "C:\nube\MEGA\programacion\HtmlCssEstatico\jekyll\notas-programacion"
c:\accesos>mklink /d notas-programacion C:\nube\MEGA\programacion\HtmlCssEstatico\jekyll\notas-programacion
vínculo simbólico creado para notas-programacion <<===>> C:\nube\MEGA\programacion\HtmlCssEstatico\jekyll\notas-programacion

c:\accesos>dir
 El volumen de la unidad C es Acer
 El número de serie del volumen es: 22C7-ADBD

 Directorio de c:\accesos

10/12/2017  17:09    <DIR>          .
10/12/2017  17:09    <DIR>          ..
10/12/2017  17:09    <SYMLINKD>     notas-programacion [C:\nube\MEGA\programacion\HtmlCssEstatico\jekyll\notas-programacion]
               0 archivos              0 bytes
               3 dirs  405.255.405.568 bytes libres

c:\accesos>cd notas-programacion

comando chcp

  • change code page

  • cambia la página de códigos que usa la consola

  • para mostrar correctamente los acentos y las ñ de un texto en utf-8

  • chcp 65001

  • la lista de códigos disponibles

COMANDO chckdsk

  • uso este comando para reparar el disco duro externo mio Seagate que daba el error de no accesible o corrupto
    • sigo estas recomendaciones
      • desde cmd y como administrador lanzo chkdsk d: /f /r /x 2021-12-27 14:28:11
        • le cuesta más de 7 horas pero al final funciona y puedo ver los 348 Gb de información
C:\WINDOWS\system32>chkdsk d: /f /r /x
El tipo del sistema de archivos es NTFS.
La etiqueta de volumen es Seagate Expansion Drive.

Etapa 1: Examen de la estructura básica del sistema de archivos...
Eliminando segmento de registro de archivo dañado 1C.                                  266:42:04
  2167520 registros de archivos procesados.                                                        0:28
Comprobación de archivos completada.
Eliminación de segmento de registro de archivo huérfano 184FED.                        0:37 .
Eliminación de segmento de registro de archivo huérfano 184FEE.
  32 registros de archivos grandes procesados.                                         :42:51 ..
  0 registros de archivos no válidos procesados.                                       :53 ...

Etapa 2: Examen de la vinculación de nombres de archivos...
Corrigiendo error en índice $I30 para archivo 5.                                       gada:   8:41:11
CHKDSK detectó espacio disponible marcado como asignado en el mapa de bits del índice $I30 del archivo 5.
Ordenando índice $I30 en archivo 5.
  154 registros de análisis procesados.                                                 8:44:20 ...:09 .
Eliminando la entrada $Repair, en el índice $I30 del archivo 1B.
Eliminando la entrada $Txf, en el índice $I30 del archivo 1B.
Eliminando la entrada f_0028d4, en el índice $I30 del archivo 195.
Eliminando la entrada 20054A~1.MOV, en el índice $I30 del archivo 183332.              gada:  14:43:40 ...
Eliminando la entrada 201C8D~1.MOV, en el índice $I30 del archivo 183332.
Eliminando la entrada 2023DE~1.MOV, en el índice $I30 del archivo 183332.
Eliminando la entrada 205111~1.MOV, en el índice $I30 del archivo 183332.
Eliminando la entrada 206BF0~1.JPG, en el índice $I30 del archivo 183332.
Eliminando la entrada 207884~1.MOV, en el índice $I30 del archivo 183332.
Eliminando la entrada 209FA5~1.MOV, en el índice $I30 del archivo 183332.
Eliminando la entrada 20D8AF~1.MOV, en el índice $I30 del archivo 183332.
  2299672 entradas de índice procesadas.                                                       14:56:02
Comprobación de índices completada.
CHKDSK está examinando los archivos no indizados para volver a conectarse a su directorio original.
Recuperando archivo huérfano $MFT (0) en el archivo de directorio 5.                   6:07 .
Recuperando archivo huérfano $MFTMirr (1) en el archivo de directorio 5.
Recuperando archivo huérfano $LogFile (2) en el archivo de directorio 5.
Recuperando archivo huérfano $Volume (3) en el archivo de directorio 5.
Recuperando archivo huérfano $AttrDef (4) en el archivo de directorio 5.
Recuperando archivo huérfano $Bitmap (6) en el archivo de directorio 5.
Recuperando archivo huérfano $Boot (7) en el archivo de directorio 5.
Recuperando archivo huérfano $BadClus (8) en el archivo de directorio 5.
Recuperando archivo huérfano $Secure (9) en el archivo de directorio 5.
Recuperando archivo huérfano $UpCase (A) en el archivo de directorio 5.
Omitiendo mensajes adicionales sobre la recuperación de huérfanos.
  15 archivos no indizados examinados.                                                 :57:05 ..
  12 archivos no indizados recuperados en su directorio original.
CHKDSK está recuperando los archivos no indizados restantes.                           :00:00 ...
  3 archivos no indizados recuperados en objetos perdidos.                             0:00
    Objetos perdidos está en \found.000

  154 registros de análisis procesados.                                                99:00:00 .

Etapa 3: Examen de los descriptores de seguridad...
Comprobación de descriptores de seguridad completada.
  66077 archivos de datos procesados.                                                  0:48 ..
CHKDSK está comprobando el diario USN...
Se ha completado la comprobación del diario USN.

Etapa 4: Búsqueda de clústeres incorrectos en los datos del archivo de usuario...
  2167504 archivos procesados.                                                                  6:01:57 ..
Comprobación de datos de archivo completada.

Etapa 5: Búsqueda de clústeres incorrectos disponibles...
  153310010 clústeres disponibles procesados.                                                       0:00:00
La comprobación del espacio disponible se completó.
Corregir errores en el reflejo de la tabla maestra de archivos (MFT).
Corrigiendo errores en el atributo de mapa de bits de la tabla maestra de
archivos (MFT).
CHKDSK detectó espacio disponible marcado como asignado en el mapa de bits
del volumen.

Windows ha hecho algunas correcciones en el sistema de archivos.
No se requiere ninguna otra acción.

 976759807 KB de espacio total en disco.
 361069228 KB en 468149 archivos.
    186696 KB en 66080 índices.
         0 KB en sectores defectuosos.
   2263843 KB en uso por el sistema.
El archivo de registro ha ocupado      65536 kilobytes.
 613240040 KB disponibles en disco.

      4096 bytes en cada unidad de asignación.
 244189951 unidades de asignación en disco en total.
 153310010 unidades de asignación disponibles en disco.

C:\WINDOWS\system32>

comando color

  • sin argumento este comando restaura el color que tenía el promt

comando copy

C:\proyectos\HelloWorldStruts2>copy dist\HelloWorldStruts2.war "C:\servidores\Apache Tomcat 7.0.27\webapps"
        1 archivo(s) copiado(s).

comando dir

  • wikipedia dir

  • dir /OGN

    • pala listar los archivos de un directorio
      • O rdenados
      • D Por fecha y hora (el más antiguo primero)
      • G primero los directorios
      • N Por nombre (orden alfabético)
      • E Por extensión (orden alfabético)
      • S Por tamaño (orden creciente)
        • - Prefijo para invertir el orden
  • ejemplo dir /O-D para listar Ordenados primero el mas actual

  • dir /AD

    • para listar de un directorio los objetos con el Atributo directorio
  • dir /AD /ON /B

    • para listar de un directorio los objetos con el Atributo directorio
    • ordenados por nombre y solo con el nombre del directorio sin encabezado
    • el que uso para documentar cada directorio y de paso referirme a los README.MD de cada subdirectorio

el comando echo

  • se puede usar para crear un archivo y añadir lineas en ese archivo
echo ---> content\ejemplo\menu1\menu1-1\_index.md
echo title: "menu1-1" >> content\ejemplo\menu1\menu1-1\_index.md
echo --->> content\ejemplo\menu1\menu1-1\_index.md
echo * este en el indice del menu menu1-1>> content\ejemplo\menu1\menu1-1\_index.md
  • pare evitar generar espacios en blanco al final de la línea atención a no dejar espacios en blanco al final de ---

  • @echo off para evitar el eco y sacar sólo el resultado

C:\proyectos>lanzaTestSinEchoOff.bat
C:\proyectos>call echo "lanzando el test inicio 01/05/2019 - 20:34:41,71"
"lanzando el test inicio 01/05/2019 - 20:34:41,71"
C:\proyectos>lanzaTestConEchoOff.bat
"lanzando el test inicio 01/05/2019 - 20:34:41,71"

el comando find

  • find "png" /N /I *.md > png.md
    • busca la palabra png en mayusculas o minusculas /I indicando el número de linea donde sale /N
      • el resultado lo graba en png.md
  • for /R %G in (*) do (find "String_I_am_Looking_For" %G)
  • for /R %G in (*) do (find /C "iranzo" *.md %G)
  • me pongo en el directorio content de javier-programacion
  • for /R %G in (*.md) do (find /N /I ".png" *.md %G >>png.txt)

comando type

  • mostrar contenido de un archivo de texto

comando tree

  • para ver los nombre de los ficheros
    • tree /F
  • para ver el árbol construido con ASCII
    • tree /F /A

comando help

  • para obtener ayuda de un comando concreto

    • find /?
  • ASSOC

    • Muestra o modifica las asociaciones de las extensiones de archivos.
  • ATTRIB

    • Muestra o cambia los atributos del archivo.
  • BREAK

    • Establece o elimina la comprobación extendida de Ctrl+C.
  • BCDEDIT

    • Establece propiedades en la base de datos de arranque para controlar la carga del arranque.
  • CACLS

    • Muestra o modifica las listas de control de acceso (ACLs) de archivos.
  • CALL

    • Llama a un programa por lotes desde otro.
  • CD

    • Muestra el nombre del directorio actual o cambia a otro directorio.
  • CHCP

    • Muestra o establece el número de página de códigos activa.
  • CHDIR

    • Muestra el nombre del directorio actual o cambia a otro directorio.
  • CHKDSK

    • Comprueba un disco y muestra un informe de su estado.
  • CHKNTFS

    • Muestra o modifica la comprobación de disco al arrancar.
  • CLS

    • Borra la pantalla.
  • CMD

    • Inicia una nueva instancia del intérprete de comandos de Windows
  • COLOR

    • Establece los colores de primer plano y fondo predeterminados de la consola.
  • COMP

    • Compara el contenido de dos archivos o un conjunto de archivos.
  • COMPACT

    • Muestra o cambia el estado de compresión de archivos en particiones NTFS.
  • CONVERT

    • Convierte volúmenes FAT a volúmenes NTFS. No puede convertir la unidad actual.
  • COPY

    • Copia uno o más archivos en otra ubicación.
  • DATE

    • Muestra o establece la fecha.
  • DEL

    • Elimina uno o más archivos.
  • DIR

    • Muestra una lista de archivos y subdirectorios en un directorio.
  • DISKCOMP

    • Compara el contenido de dos disquetes.
  • DISKCOPY

    • Copia el contenido de un disquete en otro.
  • DISKPART

    • Muestra o configura las propiedades de partición de disco.
  • DOSKEY

    • Edita líneas de comando, memoriza comandos de Windows y crea macros.
  • DRIVERQUERY

    • Muestra el estado y las propiedades actuales del controlador de dispositivo.
  • ECHO

    • Muestra mensajes, o activa y desactiva el eco.
  • ENDLOCAL

    • Termina la búsqueda de variables de entorno del archivo por lotes.
  • ERASE

    • Elimina uno o más archivos.
  • EXIT

    • Sale del programa CMD.EXE (interfaz de comandos).
  • FC

    • Compara dos archivos o conjunto de archivos y muestra las diferencias entre ellos.
  • FIND

    • Busca una cadena de texto en uno o más archivos.
  • FINDSTR

    • Busca cadenas de texto en archivos.
  • FOR

    • Ejecuta un comando para cada archivo en un conjunto de archivos.
  • FORMAT

    • Formatea un disco para usarse con Windows.
  • FSUTIL

    • Muestra o configura las propiedades de sistema de archivos.
  • FTYPE

    • Muestra o modifica los tipos de archivo usados en una asociación de extensión de archivo.
  • GOTO

    • Direcciona el intérprete de comandos de Windows a una línea en un programa por lotes.
  • GPRESULT

    • Muestra información de directivas de grupo por equipo o usuario.
  • GRAFTABL

    • Permite a Windows mostrar un juego de caracteres extendidos en modo gráfico.
  • HELP

    • Proporciona información de ayuda para los comandos de Windows.
  • ICACLS

    • Muestra, modifica, hace copias de seguridad o restaura listas de control de acceso (ACL) para archivos y directorios.
  • IF

    • Ejecuta procesos condicionales en programas por lotes.
  • LABEL

    • Crea, cambia o elimina la etiqueta del volumen de un disco.
  • MD

    • Crea un directorio.
  • MKDIR

    • Crea un directorio.
  • MKLINK

    • Crea vínculos simbólicos y vínculos físicos
  • MODE

    • Configura un dispositivo de sistema.
  • MORE

    • Muestra la información pantalla por pantalla.
  • MOVE

    • Mueve uno o más archivos de un directorio a otro en la misma unidad.
  • OPENFILES

    • Muestra archivos compartidos abiertos por usuarios remotos.
  • PATH

    • Muestra o establece una ruta de búsqueda para archivos ejecutables.
  • PAUSE

    • Suspende el proceso de un archivo por lotes y muestra un mensaje.
  • POPD

    • Restaura el valor anterior del directorio actual guardado por PUSHD.
  • PRINT

    • Imprime un archivo de texto.
  • PROMPT

    • Cambia el símbolo de comandos de Windows.
  • PUSHD

    • Guarda el directorio actual y después lo cambia.
  • RD

    • Quita un directorio.
  • RECOVER

    • Recupera la información legible de un disco dañado o defectuoso.
  • REM

    • Marca comentarios en archivos por lotes o CONFIG.SYS.
  • REN

    • Cambia el nombre de uno o más archivos.
  • RENAME

    • Cambia el nombre de uno o más archivos.
  • REPLACE

    • Reemplaza archivos.
  • RMDIR

    • Quita un directorio.
  • ROBOCOPY

    • Utilidad avanzada para copiar árboles de archivos y directorios
  • SET

    • Muestra, establece o quita variables de entorno de Windows.
  • SETLOCAL

    • Comienza la sección de cambios locales de entorno en un archivo por lotes.
  • SC

    • Muestra o configura servicios (procesos en segundo plano).
  • SCHTASKS

    • Programa comandos y programas para ejecutarse en un equipo.
  • SHIFT

    • Cambia posición de modificadores reemplazables en archivos por lotes.
  • SHUTDOWN

    • Permite el apagado local o remoto de un equipo.
  • SORT

    • Ordena la salida.
  • START

    • Inicia otra ventana para ejecutar un programa o comando.
  • SUBST

    • Asocia una ruta de acceso con una letra de unidad.
  • SYSTEMINFO

    • Muestra las propiedades y la configuración específicas del equipo.
  • TASKLIST

    • Muestra todas las tareas en ejecución, incluidos los servicios.
  • TASKKILL

    • Termina o interrumpe un proceso o aplicación que se está ejecutando.
  • TIME

    • Muestra o establece la hora del sistema.
  • TITLE

    • Establece el título de la ventana de una sesión de CMD.EXE.
  • TREE

    • Muestra gráficamente la estructura de directorios de una unidad o ruta de acceso.
  • TYPE

    • Muestra el contenido de un archivo de texto.
  • VER

    • Muestra la versión de Windows.
  • VERIFY

    • Comunica a Windows si debe comprobar que los archivos se escriben de forma correcta en un disco.
  • VOL

    • Muestra la etiqueta del volumen y el número de serie del disco.
  • WMIC

    • Muestra información de WMI en el shell de comandos interactivo.

comando systeminfo

comando XCOPY

  • lo uso para copiar directorios
  • xcopy /S para copiar directorios y subdirectorios
    • xcopy /e para copiar los directorios vacíos empty
C:\proyectos\struts>xcopy /S /E Hello_World_Struts2_Ant Hello_World_Struts2_Value_Stach_Ant
¿Hello_World_Struts2_Value_Stach_Ant especifica un archivo
o un directorio como destino
(F = archivo, D = directorio)? D
  • para copiar el árbol de directorios
xcopy web\jsp build\web\jsp /s /e
  • atención a la diferencia de copiar un directorio con su contenido a copiar el contenido de un directorio
c:\pruebas\copiando
λ tree /F
Listado de rutas de carpetas para el volumen Acer
El número de serie del volumen es 22C7-ADBD
C:.
├───directorio_dos
│   └───directorio_dos_uno
│       └───directorio_uno
│               dos.md
│               tres.md
│               uno.md
│
└───directorio_uno
        dos.md
        tres.md
        uno.md
  • ahora copio el contenido del directorio
c:\pruebas\copiando
λ xcopy /s directorio_dos directorio_tres
¿directorio_tres especifica un archivo
o un directorio como destino
(F = archivo, D = directorio)? d
directorio_dos\directorio_dos_uno\directorio_uno\dos.md
directorio_dos\directorio_dos_uno\directorio_uno\tres.md
directorio_dos\directorio_dos_uno\directorio_uno\uno.md
3 archivo(s) copiado(s)

c:\pruebas\copiando
λ tree /F
Listado de rutas de carpetas para el volumen Acer
El número de serie del volumen es 22C7-ADBD
C:.
├───directorio_dos
│   └───directorio_dos_uno
│       └───directorio_uno
│               dos.md
│               tres.md
│               uno.md
│
├───directorio_tres
│   └───directorio_dos_uno
│       └───directorio_uno
│               dos.md
│               tres.md
│               uno.md
│
└───directorio_uno
        dos.md
        tres.md
        uno.md
  • ahora copio el directorio al poner el un nombre de directorio que coincide con el original
c:\pruebas\copiando
λ xcopy /s directorio_dos directorio_tres\directorio_dos
¿directorio_tres\directorio_dos especifica un archivo
o un directorio como destino
(F = archivo, D = directorio)? d
directorio_dos\directorio_dos_uno\directorio_uno\dos.md
directorio_dos\directorio_dos_uno\directorio_uno\tres.md
directorio_dos\directorio_dos_uno\directorio_uno\uno.md
3 archivo(s) copiado(s)

c:\pruebas\copiando
λ tree /F
Listado de rutas de carpetas para el volumen Acer
El número de serie del volumen es 22C7-ADBD
C:.
├───directorio_dos
│   └───directorio_dos_uno
│       └───directorio_uno
│               dos.md
│               tres.md
│               uno.md
│
├───directorio_tres
│   ├───directorio_dos
│   │   └───directorio_dos_uno
│   │       └───directorio_uno
│   │               dos.md
│   │               tres.md
│   │               uno.md
│   │
│   └───directorio_dos_uno
│       └───directorio_uno
│               dos.md
│               tres.md
│               uno.md
│
└───directorio_uno
        dos.md
        tres.md
        uno.md
  • pero puedo copiar el contenido del directorio a otro con nombre distinto

c:\pruebas\copiando
λ xcopy /s directorio_dos directorio_tres\directorio_cuatro
¿directorio_tres\directorio_cuatro especifica un archivo
o un directorio como destino
(F = archivo, D = directorio)? d
directorio_dos\directorio_dos_uno\directorio_uno\dos.md
directorio_dos\directorio_dos_uno\directorio_uno\tres.md
directorio_dos\directorio_dos_uno\directorio_uno\uno.md
3 archivo(s) copiado(s)

c:\pruebas\copiando
λ tree /F
Listado de rutas de carpetas para el volumen Acer
El número de serie del volumen es 22C7-ADBD
C:.
├───directorio_dos
│   └───directorio_dos_uno
│       └───directorio_uno
│               dos.md
│               tres.md
│               uno.md
│
├───directorio_tres
│   ├───directorio_cuatro
│   │   └───directorio_dos_uno
│   │       └───directorio_uno
│   │               dos.md
│   │               tres.md
│   │               uno.md
│   │
│   ├───directorio_dos
│   │   └───directorio_dos_uno
│   │       └───directorio_uno
│   │               dos.md
│   │               tres.md
│   │               uno.md
│   │
│   └───directorio_dos_uno
│       └───directorio_uno
│               dos.md
│               tres.md
│               uno.md
│
└───directorio_uno
        dos.md
        tres.md
        uno.md
  • en resumen xcopy /s directorio_dos copia el contenido del directorio_dos no el directorio con su contenido pero si en la ruta de destino ponemos el nombre del directorio origen el comando crea esa ruta con lo que se consigue una copia completa del directorio y su contenido

borrar un directorio con archivos

rd /S <nombre directorio>
Quita (elimina) un directorio.

RMDIR [/S] [/Q] [unidad:]ruta
RD [/S] [/Q] [unidad:]ruta

    /S     Quita todos los directorios y archivos del directorio además
           del mismo directorio. Se usa principalmente cuando se
           desea quitar un árbol.

    /Q     Modo silencioso, no pide confirmación para quitar un árbol
           de directorio con /S
  • atención los parámetros son en mayúsculas /S y /Q

mostrar variables

%JAVA_HOME%

caracteres especiales

  • la virgulilla ~
    • AltGr + 4 + 4 sin soltar la primera tecla

utilidades

chuleta

  • To create a batch file type batch commands into a text file and name it with a .bat extension.
  • To run a batch file either double click on it in windows explorer, right click and hit Open, or type the name in a command shell (in the correct directory) and hit enter.
  • ECHO ON to print the commands to the output.
  • ECHO OFF to stop printing commands to the output.
    • @echo off desactiva el eco del propio comando echo off
  • ECHO will write to the output.
  • REM comments out a line. This line will be printed if ECHO is turned on.
  • :: Also comments out the line but will not be printed if ECHO is turned on.
  • You can pass in parameters by putting %1, %2, %3 etc in your bat file. These will corrispond to the 1st, 2nd, and 3rd parameters passed in to a limit of %9.
  • %* is all parameters.
  • SHIFT moves the parameters down one. So the second parameter is now %1, third parameter is %2 etc. This let’s you handle more than 9 parameters.
  • If you call the parameters like this %~1, %~2, %~3 then the quotes(“”) surrounding the parameter will be stripped off.
  • SET var=xxx xxx Declares the variable var and stores “xxx xxx” into it.
  • ECHO %var% to print the contents of the variable var.
  • Put : at the beginning of a line to create a label.
  • Use GOTO : to jump to that label.
  • IF condition (command) Run command if condition is true.
  • IF EXIST command Run command if exists.
  • NOT Checks if the condition is not true.
  • Use == For equal to.
  • Use <> or != for not equal to.
  • CD change location to .
  • : Change location to current directory of .
  • . is the current directory.
  • .. is the directory one above the current directory.
  • COPY Copies the file to .
  • COPY + Copies the contents of into .
  • MOVE Moves the file to .
  • DEL Deletes if it exists.
  • TYPE prints the contents of to the output.
  • CALL Executes .
  • START program
    • Starts a command or program.
  • comando | comando
    • pasa la salida de un comando a otro
  • TIME or DATE establece la hora y la fecha.
  • echo Fecha: %DATE%
  • echo Hora: %TIME%
  • FIND “” outputs only the lines with in them from whatever input is passed.
  • DIR FIND mystring outputs only the rows with mystring from the DIR command.
  • DIR > test.txt Copies the output of the DIR command to the file test.txt overwriting the file if it already exists.
  • EXIT to leave the bat file and return to the calling code. is optional.

startup.bat

  • importante la codificación en UTF-8 sin boom y guardarlo con ese encoding pues si no pone caracteres no imprimible al principio
C:\servidores\Apache Tomcat 7.0.27\bin>type startup.bat
´╗┐@echo off

pendiente

  • ver que usuario tengo en el equipo ACER y cual es la contraseña de administrador
  • poder correr un programa en modo administrador para por ejemplo editar archivos como directorio.md en el directorio raíz
    • runas /user:\administrator notepad