Lista de comandos do MS-DOS

Esta é unha **lista dos comandos máis empregados do sistema operativo MS-DOS** de Microsoft.

Nesta lista, cando un comando pode aceptar máis dun nome de ficheiro ou un nome de arquivo con comodíns (* e ?), dise que aceptan un parámetro *ficheirospec*. Os comandos que só aceptan un nome de arquivo dise que aceptan un parámetro *ficheiro*.

Para moitos dos comandos tamén se da a súa equivalencia cós de Unix.

## Commandos 
### attrib 
Cambia ou amosa os atributos dun ou máis ficheiros. Por defecto amosa os atributos de tódolos ficheiros no directorio actual.

**Opcións**
* Para engadir un atributo inclúese un '+' diante.
* Para quitar un atributo inclúese un '-' diante.

**Atributos**
* R - só lectura
* A - ficheiro
* S - sistema
* H - oculto

```dos
attrib [+|-ahrs] [*ficheirospec*]
```

Equivale ao comando de Unix `chmod`. En Linux o comando `chattr` tamén realiza funcións similares.

### cd 
Cambia o directorio actual.

```dos
cd *directory*
```

Equivale ao comando de Unix `cd` (con parámetros), ou `pwd` (sen parámetros).

### chkdsk 
Verifica a integridade do sistema de ficheiros dun disco duro ou disquete

**Opcións**
* /F - amaña os erros do disco
* /V - amosa a dirección completa e nome de tódolos ficheiros do disco

```dos
chkdsk *unidade* [[ruta]ficheiro] [/F] [/V]
```

Equivale ao comando de Unix `fsck`.

### cls 
Limpa a pantalla.

```dos
cls
```

Equivale ao comando de Unix `clear`.

### copy 
Copia ficheiros dun lugar a outro. O destino por defecto é o directorio actual. Se se indican múltiples ficheiros de orixe, o destino debe ser un directorio ou da como resultado un erro.ror will result.

**Atributos**
* /a - modo texto, copia o contido de texto do ficheiro, parando cando chega ao carácter de fin de ficheiro.
* /b - modo binario, concatena os ficheiros enteiros, ignorando os caracteres de fin de ficheiro.

```dos
copy *ficheirospec* [*destino*]
```

Equivale ao comando de Unix `cp`.

### copy *dispositivo* 
Empregado desta forma, o comando `copy` permite escribir datos dende o dispositivo dado ao ficheiro especificado ata que se atopa có carácter de fin de ficheiro (carácter 26 do código ASCII, tecléase con ctrl-Z). O dispositivo máis común e con (consola), có que `copy con *ficheiro*` permite escribir directamente nun ficheiro.

```dos
copy *dispositivo* *ficheiro*
```

En Unix esta función ven dada polo comando `cat`. `cat > *ficheiro*` (sendo ctrl+D para rematar) sería o equivalente a este comando.

### defrag 
Defragmenta unha unidade de disco

```dos
defrag *letraunidade*
```

Non ten equivalente en Unix.

### del 
Borra un ficheiro dado

```dos
del *ficheiro*
```

Equivale ao comando de Unix `rm`.

### deltree 
Elimina un directorio xunto con todos os ficheiros e subdirectorios que conteña. Antes de o facer realiza unha pregunta de confirmación.

**Atributos**
* /y - Non amosa a pregunta de confirmación

```dos
deltree [/y] *directorio*
```

En Unix a función de `deltree` vén dada polo comando `rm` có parámetro `-r`.

### dir 
Amosa o contido dun directorio

**Atributos**
* [unidade:][ruta][ficheiro] - Especifica a unidade, directorio e/ou ficheiros a listar.
* /A - Amosa arquivos con atributos específicos:
** D - directorios.
** R - ficheiros de só lectura.
** H - ficheiros ocultos.
** A -
** S - ficheiros do sistema.
** - - prefixo para non amosar.
* /B - Usa o formato nu (sen información de cabeceira ou sumario).
* /C[H] - Amosa relacións de compresión nun volume comprimido.
* /L - Emprega minúsculas.
* /O - Lista de ficheiros segundo:
** N - por nome (alfabeticamente).
** S - por tamaño (os máis pequenos primeiro).
** E - por extensión (alfabeticamente).
** D - por data/hora (os máis antigos primeiro).
** G - grupos de directorios primeiro.
** - - prefixo para reverter a orde.
* /P - Pausa despois de cada pantalla de información.
* /S - Amosa os ficheiros no directorio especificado e tódolos subdirectorios.
* /T - Controla o campo de tempo que se amosa ou se emprega para ordenar:
** C - Creación.
** A - Último acceso.
** W - Última modificación.
* /W - Emprega formato ancho de lista.
* /4 - Amosa anos de 4 díxitos.

```dos
DIR [/A[[:]atributos]] [/B] [/C] [/D] [/L] [/N] [/O[[:]orde]] [/P] [/Q] [/S]
    [/T[[:]campodetempo]] [/W] [/4] [unidade:][ruta][ficheiro]
```

Equivale ao comando de Unix `ls`.

### echo 
Imprime os seus propios argumentos a saída estándar, normalmente a pantalla, aínda que pode ser redirixido coma calquera outro comando. Emprégase habitualmente nos ficheiros batch para amosar texto ao usuario.

```dos
echo *isto é texto* Amosa 'isto é texto'
echo. Amosa unha liña en branco
```

Outro uso importante do comando `echo` é acender ou apagar a saída por pantalla de comandos nos ficheiros batch.

```dos
echo on acende o eco dos comandos
echo off apaga o eco dos comandos
```

É equivalente ao comando de Unix `echo`.

### exit 
Sae do procesador de comandos.

```dos
EXIT
```

Tamén existe nos shells Unix.

### fc 
Compara dous ficheiros ou conxuntos de ficheiros e amosa as diferenzas entre eles.

**Atributos**
* /A - Amosa só a primeira e a última liña de cada conxunto de diferenzas.
* /B - Realiza unha comparación binaria.
* /C - Non ten en conta as maiúsculas/minúsculas.
* /L - Compara os ficheiros como texto ASCII.
* /LBn - Limita o máximo número de diferenzas consecutivas a un número especificado de liñas.
* /N - Amosa os números de liña nunha comparación ASCII.
* /T - Non expande tabulacións a espazos.
* /W - Comprime os espazos en branco (tabulacións e espazos) para a comparación.
* /nnnn - Especifica o número de liñas consecutivas que deben coincidir tras unha diferencia.
* [unidade1:][ruta1]ficheiro1 - Especifica o primeiro ficheiro ou conxunto de ficheiros a comparar.
* [unidade2:][ruta2]ficheiro2 - Especifica o segundo ficheiro ou conxunto de ficheiros a comparar.

```dos
FC [/A] [/C] [/L] [/LBn] [/N] [/T] [/W] [/nnnn] [unidade1:][ruta1]ficheiro1 [unidade2:][ruta2]ficheiro2

FC /B [unidade1:][ruta1]ficheiro1 [unidade2:][ruta2]ficheiro2
```

Equivale aos comandos de Unix `comm`, `cmp` e `diff`.

### fdisk 
Manipula táboas de partición de discos duros. Cando se executa na liña de comandos amosa un menú con distintas operacións :

```dos
1. Crear unha partición DOS ou Unidade Lóxica DOS
2. Elixir a partición activa
3. Eliminar unha partición ou Unidade Lóxica DOS
4. Amosar información das particións 
5. Cambiar o disco duro actual
```

`Fdisk` existe en Unix có mesmo nome pero é un programa completamente diferente, aínda que ten o mesmo propósito.

### find 
É un filtro empregado para atopar unha cadea de caracteres específica nun ficheiro ou ficheiros

**Atributos**
* /V - Amosa tódalas liñas que non conteñan a cadea.
* /C - Amosa só a conta de liñas que conteñen a cadea.
* /N - Amosa os números de liña que conteñen a cadea.
* /I - Ignora as maiúsculas/minúsculas.
* "cadea" - Especifica a cadea de texto a procurar.
* [unidade:][ruta]ficheiro - Especifica o ficheiro ou ficheiros a procurar.

```dos
FIND [/V] [/C] [/N] [/I] "cadea" [[unidade:][ruta]ficheiro[ ...]]
```

Equivale ao comando de Unix `grep`.

### format 
Elimina tódolos ficheiros no disco e reformatéao para MS-DOS.

**Atributos**
* /V[:etiqueta]- Especifica a etiqueta de volume.
* /Q - Realiza un formateo rápido.
* /F:tamaño - Especifica o tamaño do disquete a formatear (160, 180, 320, 360, 720, 1.2, 1.44, 2.88).
* /B - Aloxa espazo no disco formateado para os ficheiros de sistema.
* /S - Copia ficheiros de sistema no disco formateado.
* /T:pistas - Especifica o número de pistas por lado do disco.
* /N:sectores - Especifica o número de sectores por pista.
* /1 - Formatea un só lado dun disquete.
* /4 - Formatea un disquete de 5.25" 360Kb.
* /8 - Formatea oito sectores por pista.
* /C - Testea os clústeres que estean marcados como defectuosos.

```dos
FORMAT unidade: [/V[:etiqueta]] [/Q] [/F:tamaño] [/B | /S] [/C]
FORMAT unidade: [/V[:etiqueta]] [/Q] [/T:pistas /N:sectores] [/B | /S] [/C]
FORMAT unidade: [/V[:etiqueta]] [/Q] [/1] [/4] [/B | /S] [/C]
FORMAT unidade: [/Q] [/1] [/4] [/8] [/B | /S] [/C]
```

É equivalente ao comando de Unix `mkfs`.

### help 
Amosa a axuda. con `help *comando*` obtemos axuda dun comando específico.

É parcialmente equivalente ao comando de Unix man.

### label 
Cambia a etiqueta dunha unidade lóxica, coma por exemplo unha partición do disco duro ou un disquete

### md 
Crea un novo directorio. O directorio pai do que es especifica debe existir previamente.

```dos
md *directorio*
```

Equivale ao comando de Unix `mkdir`.

### mem 
Amosa o uso da memoria.

```dos
mem
```

Equivale ao comando de Unix `free`.

### more 
Pasa de páxina a través da saída permitindo ver máis dunha pantalla de texto.

```dos
*command* | more
```

Equivale aos comandos de Unix `more` e `less`.

### move 
Move ficheiros ou cambia de nome directorios

```dos
move *ficheiro* *novonome*

move *letraunidade:\vellodir* *letraunidade:\novodir*
```

Equivale ao comando de Unix `mv`.

### msd 
Amosa información técnica detallada sobre o hardware e software presente no ordenador

```dos
msd
```

Non ten equivalente en Unix.

### rd 
Elimina un directorio, que debe estar baleiro.

```dos
rd *directorio*
```

Equivale ao comando de Unix `rmdir`.

### ren 
Cambia o nome dun ficheiro. Non se pode usar para cambiar o nome de subdirectorios ou de ficheiros a través de unidades. Pode usarse para cambiar o nome de ficheiros en masa empregando comodíns.

```dos
ren *filename* *newname*
```

En Unix esta función vén dada polo comando `mv`, mentres que para cambiar o nome en masa se emprega o coamndo `rename`.

### scandisk 
É unha utilidade de diagnóstico de discos, substitúe a utilidade `chkdsk`.

### sort 
Filtra un arquivo para escoller liñas dun ficheiro de entrada e mandalas a un de saída.

```dos
sort  *ficheirosaida*
```

Equivale ao comando de Unix `sort`.

### time / date 
Establece ou amosa a data e a hora do sistema.

```dos
date

time
```

Equivale ao comando de Unix `date`.

### tree 
Amosa a árbore de directorios do directorio actual

**Atributos**

* /F - Amosa os nomes dos ficheiros de cada directorio.
* /A - Emprega caracteres ASCII en vez dos caracteres estendidos.

```dos
tree [/F] [/A] [*directorio*]
```

Equivale ao comando de Unix `find`.

### type 
Amosa o contido dun arquivo. O comando more pode usarse en conxunción con este comando da forma type *ficheiro* | more.

```dos
type *filename*
```

O comando equivalente en Unix é `cat`.

### ver 
Amosa a versión de MS-DOS que se está a empregar. Algunhas versións do MS-DOS soportan un atributo /r que amosa a revisión ademais da versión.

```dos
ver [/r]
```

Equivale ao comando de Unix `uname`.

### xcopy 
Copia ficheiros e árbores de directorios incluíndo tódolos seus contidos.

**Atributos**
* orixe - Especifica o(s) ficheiro(s) a copiar.
* destino - Especifica a localización e/ou nome dos novos ficheiros.
* /A - Copia ficheiros cós seus atributos, sen cambialos.
* /D:data - Copia ficheiros cambiados na data especificada ou máis tarde.
* /P - Pide confirmación antes de crear cada ficheiro de destino.
* /S - Copia directorios e subdirectorios agás os que estean baleiros.
* /E - Copia directorios e subdirectorios, incluso os que estean baleiros.
* /W - Pide confirmación antes de comezar a copiar.
* /C - Continúa copiando incluso se ocorre algún erro.
* /I - Se non existe o destino e se copia máis dun ficheiro asume que o destino debe ser un directorio.
* /Q - Non amosa o nome dos ficheiros mentres copia.
* /F - Amosa o nome completo dos ficheiros de orixe e destino mentres copia.
* /L - Amosa os ficherios que se van a copiar.
* /H - Copia ficheiros ocultos e de sistema.
* /R - Sobrescribe ficheiros de só lectura.
* /T - Crea a estrutura de directorios pero non copia ficheiros. Non inclúe directorios ou subdirectorios baleiros.
** /T /E - Inclúe directorios e subdirectorios baleiros.
* /U - Actualiza os ficheiros que xa existen previamente no destino.
* /K - Copia atributos.
* /Y - Sobrescribe ficheiros existentes sen preguntar.
* /-Y - Pregunta antes de sobrescribir ficheiros existentes.

```dos
XCOPY orixe [destino] [/A] [/D[:data]] [/P] [/S [/E]] [/W] [/K] 
                      [/C] [/I] [/Q] [/F] [/L] [/H] [/R] [/T] [/U]
```

En Unix unha función similar obtense có comando `cp`.

## Véxase tamén 
### Outros artigos 
* Comando (informática)
* MS-DOS
### Ligazóns externas 
* Documentación oficial de referencia de comandos do Microsoft MS-DOS 6 
* Comandos do MS-DOS