Presentación utilizada para mis prácticas de la clase de Sistemas Operativos Avanzados donde se explican los conceptos de redirección de entradas, salidas y salidas estándar de error y la creación de unidades virtuales con comandos MS-DOS. Este material esta bajo la licencia CC Attribution-NonCommercial-NoDerivs License, lo que significa que es libre para un uso no comercial y se puede copiar y distribuir en cualquier medio o formato siempre y cuando se respeten los créditos mostrados y no se realicen adaptaciones ni derivados del mismo.
2. ENTRADASY SALIDAS ESTÁNDAR DE COMANDOS.
Los argumentos que posee un comando generalmente suelen indicar la fuente de información de entrada
y/o el destino de los resultados de la salida. Los canales de entrada, salida estándar y salida estándar de
errores son los siguientes:
1. Entrada estándar (stdin): Por defecto en teclado.
2. Salida estándar (stdout): Por defecto en pantalla.
3. Salida estándar de errores (stderr): Por defecto en pantalla.
COMANDO
STDIN STDOUT
STDERR
3. REDIRECCIÓN DE LAS ENTRADASY SALIDAS ESTÁNDAR.
Sin embargo no siempre se utilizan las entradas y salidas estándar por defecto, éstas se pueden
redireccionar de tal manera que se haga uso de un fichero ya sea para leer o guardar la fuente de
información de entrada y salida (estándar y/o estándar de errores) respectivamente. Cabe señalar que estas
redirecciones crean el archivo en la ruta del prompt donde nos encontremos actualmente y pueden
combinarse según se necesite.
COMANDO
STDIN STDOUT
STDERR
COMANDO
STDIN STDOUT
STDERR
4. REDIRECCIÓN DE STDOUT Y STDERR.
La redirección de salida stdout y stderr permite guardar en un fichero los resultados obtenidos de algún
comando en específico. La siguiente tabla muestra el significado y la sintaxis de los operadores de
redireccionamiento.
Operador Sintaxis Significado Ejemplo
> comando > archivo.txt
Crea archivo.txt y guarda en él la salida
del comando. Esto borra cualquier
contenido en archivo.txt.
>> comando >> archivo.txt
Añade al archivo.txt la salida del
comando y lo crea si aún no existe. Esto
no borra el contenido previo del
archivo.txt.
>&2 comando >&2
Muestra en pantalla el resultado de un
error y lo marca como tal. Es
comúnmente utilizado en la
programación de scripts.
5. REDIRECCIÓN DE STDIN.
La redirección de entrada stdin permite leer un fichero y manipular su contenido mediante un comando
en específico. La siguiente tabla muestra el significado y la sintaxis del operador de redireccionamiento.
Operador Sintaxis Significado Ejemplo
< comando < archivo.txt
Lee el archivo.txt y el contenido de éste lo
asigna a algún comando en específico para
realizar alguna acción. Por ejemplo el
comando sort lista en orden
ascendente/descendente alfabético o
numérico el contenido del archivo.txt línea
por línea.
6. COMANDO ECHO.
El comando echo tiene 4 funciones principales:
1. Mostrar u ocultar la ruta del prompt.
2. Mostrar si la ruta del prompt esta activada o desactivada.
3. Mostrar un mensaje en consola.
4. Si se redirecciona su salida estándar permite guardar el mensaje en un archivo de texto.
Ejemplo Significado
Muestra el prompt en consola.
Oculta el prompt de la consola.
Muestra si el prompt esta activado o desactivado.
Muestra el mensaje “Hola a todos” en consola.
Redirecciona el mensaje “Hola a todos” al archivo.txt
Añade el mensaje “Como estan” al archivo.txt
Muestra el mensaje “Hay un error” en consola y lo marca como salida estándar de error.
7. COMANDO TYPE.
El comando type tiene 3 funciones principales:
1. Mostrar el contenido de un fichero en consola.
2. Si se redirecciona su salida estándar permite guardar el contenido de varios ficheros en uno nuevo.
3. Si se usa con tuberías ( Representadas con el símbolo | ) y con el comando find permite buscar cadenas
específicas de caracteres en un fichero y mostrarlas en consola.
Ejemplo Significado
Muestra el contenido de archivo.txt en consola.
Redireccionamos el contenido de archivo.txt y archivo1.txt hacia
archivo2.txt, este último lo crea si no existe.
Añadimos el contenido de archivo.txt y archivo1.txt hacia
archivo2.txt, este último lo crea si no existe.
Busca en el archivo.txt la cadena “ericka” y muestra en consola
los resultados obtenidos.
8. UNIDADVIRTUAL PARA RUTAS.
Una unidad virtual representa una simulación de una unidad física que se
puede crear a nivel Shell, su principal función es substituir una ruta hacia un
directorio por una unidad de tal manera que, al usar comandos, se hará
referencia a dicho directorio con la unidad que se ha montado para él. Las
principales características de una unidad virtual son:
Posee una letra que la identifique seguido de dos puntos y que
podemos asignar a nuestro gusto siempre y cuando no estén
ocupadas (M: N:T:).
Para cambiar la posición a dicha unidad en el prompt basta con
poner la letra asignada, seguido de dos puntos y la tecla enter.
Son temporales pues se eliminan automáticamente al reiniciar o
apagar el equipo.
Se pueden desmontar.
9. COMANDO SUBST.
El comando SUBST sirve para montar una unidad virtual hacia un directorio en
específico, esto nos permite utilizar la unidad montada en lugar de una ruta (absoluta o
relativa) hacia un directorio en específico en la línea de comandos, los parámetros
básicos de este comando contienen una letra correspondiente a la unidad que
deseamos montar, seguido de dos puntos, así como una ruta (absoluta o relativa) entre
comillas, cada parámetro separado con espacios.
Ejemplo:
Para el siguiente árbol de directorios crearemos una unidad virtual T: hacia la carpeta
monitor usando su ruta absoluta y una unidad virtual V: hacia la carpeta windows
usando su ruta relativa con respecto a la carpeta prac5.
Para navegar a la nueva unidad sólo se coloca la letra de la
unidad, dos puntos y enter, así entraremos a la ruta de la
carpeta monitor como si usáramos el comando cd.
10. DESMONTAR LA UNIDADVIRTUAL.
Una unidad virtual creada con el comando subst se puede desmontar de igual manera siempre y cuando
nuestra ruta del prompt sea diferente a la ruta o unidad que queremos desmontar, los parámetros básicos
para desmontar una unidad con subst contienen el atributo /D seguido de la letra unidad que queremos
desmontar y dos puntos, cada uno separado con espacios.
Ejemplo: