














































Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Prepara tus exámenes
Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Prepara tus exámenes con los documentos que comparten otros estudiantes como tú en Docsity
Los mejores documentos en venta realizados por estudiantes que han terminado sus estudios
Estudia con lecciones y exámenes resueltos basados en los programas académicos de las mejores universidades
Responde a preguntas de exámenes reales y pon a prueba tu preparación
Consigue puntos base para descargar
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Comunidad
Pide ayuda a la comunidad y resuelve tus dudas de estudio
Descubre las mejores universidades de tu país según los usuarios de Docsity
Ebooks gratuitos
Descarga nuestras guías gratuitas sobre técnicas de estudio, métodos para controlar la ansiedad y consejos para la tesis preparadas por los tutores de Docsity
Documento que contiene una serie de ejercicios prácticos para aprender a utilizar comandos UNIX como cp, ls, cat, grep, sort y redireccionamiento de entrada y salida. El documento también incluye ejemplos de editar archivos y ordenarlos.
Tipo: Apuntes
1 / 54
Esta página no es visible en la vista previa
¡No te pierdas las partes importantes!
Guatemala 2011
En este apartado afrontaremos la explicación de algunas órdenes básicas y que, sin tener una importancia relevante dentro del sistema, nos permite realizar ciertas acciones muy simples.
Cuando se ejecuta una orden, el sistema establece un entorno de ejecución para la orden y le pasa algunas de las variables de entorno. No todas las variables del entorno están disponibles para las órdenes que ejecutemos. Cuando se ejecuta una orden, el shell le cede un entorno inicial que puede ser transmitido a los subprogramas ejecutados desde ese programa. Sólo aquellas variables del entorno que sean exportadas estarán disponibles a los subprogramas.
Ordenes de propósito general:
Despliega la fecha y el tiempo. Comando: date Sintaxis: date [+ formato]
Las excelentes facilidades de mantenimiento del tiempo del sistema UNIX controlan el tiempo dentro del sistema para todas las resoluciones desde milisegundos hasta años. Por omisión, la fecha se visualiza de acuerdo con la hora y zona horaria local.
La orden date puede formatear su salida de diferentes formas y se utiliza para establecer el tiempo del sistema. Tenemos varias modificaciones para la orden date. Así, la orden sin argumentos ni parámetros nos visualiza la fecha actual del sistema:
$ date Thu May 26 13:57:20 GMT 2011
Se visualiza la fecha y hora actual tal y como es conocida por el sistema.
La sintaxis de esta orden también puede ser:
Formato:
%a Nombre abreviado del día de la semana /A Nombre completo del día de la semana %b Nombre abreviado del mes %B Nombre completo del mes %c Formato estándar para la fecha y la hora
Ejemplo:
$banner acceso denegado
Se utiliza a menudo en funciones de salida tales como los spoolers de impresión para visualizar tipos de información.
Presenta un calendario del mes actual sobre su salida estándar. Comando cal Sintaxis: cal [Mes] [Año]
Ejemplo:
$cal 5 2011
May 2011 S M Tu W Th F S 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Sirve para escribir un mensaje en la salida estándar. Comando: echo Sintaxis: echo 'opciones' mensaje
Para escribir mensajes con caracteres especiales (p.e espacios) debemos encerrarlos entre comillas dobles “ ”.
Opciones
\a carácter de alerta, se debe activar desde la terminal la configuración de beep. \n nueva línea \t tabulación \v tabulación vertical
Ejemplo:
Imprime un mensaje $echo Imprimir este comentario Imprimir este comentario
Imprime en pantalla lo que esta encerrado en la comillas acepta las tabulación $echo "Imprimir este comentario con espacios" Imprimir este comentario con espacios
Imprime el mensaje sin tomar en cuenta la tabulación, debido a que no se coloco dentro de “ ”. $echo Imprimir este comentario con espacios Imprimir este comentario con espacios
Acepta multiples opciones e imprime el mensajes $echo '\t\t\v' "Imprimir comentario"
Imprimir comentario
Comando que sirve para limpiar la pantalla del terminal. Comando: clear Sintaxis: clear
El Manuel del usuario es la documentación oficial del sistema UNIX. Comando: man Sintaxis: man [comando]
Todas las órdenes, argumentos para órdenes, bibliotecas de subrutinas, formato de fichero, utilidades y herramientas están documentadas completamente en el man.
-q Para los caracteres no imprimibles del nombre del archivo se representará un signo de interrogación (?) -R Recursivo, para cada directorio, muestra también su contenido de forma recursiva. -a Todos los ficheros, incluye ficheros que comienzan por un punto -A Casi todos los ficheros, incluye los ficheros que comienzan por un punto (.), excepto los directorios “.” Y “..” -d Lista el nombre de un directorio en lugar de su contenido. -t Ordena los ficheros listados por la fecha y hora de modificación. -S Ordena los ficheros listados por su tamaño. -x Ordena los ficheros listados por su extensión. -r Ordena los ficheros de forma inversa. -U No ordena los ficheros de ninguna forma, los lista en el orden en que aparecen en el disco. -s Muestra el tamaño de un archivo a la izquierda de su nombre, medido en bloques. -F Muestra un carácter al final del nombre, que indica el tipo de fichero -i Muestra el inodo (la zona de disco) en que se ubica la información del fichero.
Muestra la ruta completa del directorio actual. No admite ningún modificador. Comando: pwd Sintaxis: pwd
Ejemplo
$pwd /noc05/get_data/bscgsm/GUAZA3B
Sirve para cambiar el directorio por defecto, permitiendo navegar por el árbol de directorios. Comando: cd Sintaxis: cd [Cambio de directorio]
cd (change directory), admite como parámetro el nombre del directorio al que queremos cambiar. Cuando cambiamos a un directorio, podemos hacerlo de forma relativa o absoluta. Para cambiar a un directorio de forma absoluta debemos conocer la ruta exacta y asegurarnos de que el directorio comienza por “ / ”
El directorio actual también se conoce como directorio punto (.). Si usamos la forma cd.. subiremos hasta el directorio padre respecto al directorio donde nos encontremos. Si usamos cd sin especificar directorios, nos lleva al directorio home , contiéndase éste en el directorio actual.
Se puede especificar una ruta de acceso completa para cambiar a un subdirectorio del directorio actual. Sin embargo, resulta más fácil hacerlo mediante una ruta relativa.
Ejemplo
En este ejemplo nos trasladamos en forma absoluta al directorio deseado. $pwd /home $ls – ltr
drwxrwxrwx 4 noc ope 512 Sep 22 2005 noc01/ drwxrwxrwx 10 oracle8 dba 512 Nov 20 2006 noc03/ drwxrwxrwx 12 noc ope 1024 Nov 17 2009 noc04/ drwxrwxrwx 2 root other 512 Oct 29 2010 noc06/ drwxrwxrwx 14 noc ope 1024 May 31 13:57 noc05/
$cd /noc05/get_data/bscgsm/GUAZA2B/ksh2 #ruta absoluta $pwd /noc05/get_data/bscgsm/GUAZA2B/ksh
En este ejemplo nos trasladamos en forma relativa hasta alcanzar al directorio deseado. $pwd /home $ls – ltr
drwxrwxrwx 4 noc ope 512 Sep 22 2005 noc01/ drwxrwxrwx 10 oracle8 dba 512 Nov 20 2006 noc03/ drwxrwxrwx 12 noc ope 1024 Nov 17 2009 noc04/ drwxrwxrwx 2 root other 512 Oct 29 2010 noc06/ drwxrwxrwx 14 noc ope 1024 May 31 13:57 noc05/
$cd noc05 #ruta relativa 1 $pwd /noc $cd get_data #ruta relativa 2 $pwd /noc05/get_data $cd bscgsm #ruta relativa 3 $pwd /noc05/get_data/bscgsm $cd GUAZA2B #ruta relativa 4 $pwd /noc05/get_data/bscgsm/GUAZA2B $cd ksh2 #ruta relativa 5 $pwd /noc05/get_data/bscgsm/GUAZA2B/ksh
Para regresar al directorio anterior usamos el cd.. $pwd /noc05/get_data/bscgsm/GUAZA2B/ksh $cd .. $pwd /noc05/get_data/bscgsm/GUAZA2B
Ejemplo
Borrando un directorio vacio. $pwd /noc05/guatemala/area $ls -ltr drw-r--r-- 1 noc ope 512 Jun 13 17:27 plataformas drw-r--r-- 1 noc ope 512 Jun 13 17:27 conmutacion drw-r--r-- 1 noc ope 512 Jun 13 17:27 planta_externa
$rmdir plataformas $ls -ltr drw-r--r-- 1 noc ope 512 Jun 13 17:27 conmutacion drw-r--r-- 1 noc ope 512 Jun 13 17:27 planta_externa
El comando mkdir sirve para crear subdirectorios, dando lugar a la estructura del árbol de directorios. Comando: mkdir Sintaxis: mkdir [modificador] directorio
Los nuevos directorios se pueden especificar mediante una ruta absoluta o relativa al directorio actual. Solamente puede crearse un nivel de directorio uno a la vez. Pero para poder crear directorios padre sin que existan previamente podemos utilizar la opcion – p.
La siguiente tabla resume los principales modificadores del comando medir.
Modificador Resultado -p Crear recursivamente: antes de crear un directorio, crea su propio directorio padre si no existe. -m Permite especificar los permisos del nuevo directorio
Ejemplo
Creando directorios $pwd /noc05/get_data/eir $ls -ltr total 0 $mkdir captura data ksh log $ls -ltr drw-r--r-- 1 noc ope 512 Jun 18 17:27 captura/ drw-r--r-- 1 noc ope 512 Jun 18 17:27 data/ drw-r--r-- 1 noc ope 512 Jun 18 17:27 ksh/ drw-r--r-- 1 noc ope 512 Jun 18 17:27 log/
Crear directorios en forma recursiva $pwd /noc05/get_data/eir $ls -ltr total 0 $mkdir -p captura/GT/data $cd captura $cd GT $cd data $pwd /noc05/get_data/eir/captura/GT/data
Creando un directorio y deshabilitando permisos al grupo $pwd /noc05/get_data/eir $ls -ltr total 0 $mkdir – m g=-rwx captura $ls -ltr drwx---rwx 2 noc ope 512 Jun 22 12:32 captura/
El comando sirve para cambiar el nombre de ficheros o directorios, o para moverlos dentro del árbol de directorios. Comando: mv Sintaxis: mv origen destino
El comando mv (move), debemos especificar uno o varios archivos de origen y una ruta de destino. Si sólo hay un fichero de origen, el destino puede ser un nombre de fichero, con su ruta correspondiente y mv solamente renombrará y o moverá el archivo; en cambio, si hay varias fichero de origen, el destino sólo puede se un directorio, y mv sólo actuara moviendo los archivos a la ruta indicada como destino.
Ejemplo
Renombrando el fichero en el mismo directorio $pwd /noc05/get_data/ $ls file1.txt file2.txt file3.txt $mv file1.txt copia_file1.txt $ls copia_file1.txt file2.txt file3.txt
Ejemplo
Copia un fichero dentro en el mismo directorio asignadole otro nombre a la copia. $ls prueba.txt $cp prueba.txt documento.txt $ls prueba.txt documento.txt
Copia un fichero hacia otro directorio en forma absoluta $pwd /noc05/get_data $ls prueba.txt $cp prueba.txt /noc05/loader_db/prueba.txt $cd /noc05/loader_db $pwd /noc05/loader_db $ls prueba.txt
Copia un directorio completo con subdirectorio y fichero dentro de los mismos. $ls -ltr drwxr-xr-x 6 noc ope 512 Jun 23 20:19 dir1/
$cp – r dir1 dir drwxr-xr-x 6 noc ope 512 Jun 23 20:19 dir1/ drwxr-xr-x 6 noc ope 512 Jun 23 20:20 dir2/ $cd dir $ls captura data ksh log
Sirve para encadenar varios ficheros Comando: cat Sintaxis: cat [modificador] ficheros
El comando cat (concatenate). El resultado se muestra por pantalla. Admite como parámetro la lista de ficheros que hay que encadenar. Estos se enviarán a la salida estándar en el mismo orden en que se aparecen en la lista. Si sólo se especifica un fichero, el resultado será que se mostrará por pantalla ese fichero, lo cual este es el uso más común que se le da al cat.
Cat se utiliza a menudo para componer pequeños ficheros de texto. El comando cat > nuevo_texto ,crea el fichero nuevo_texto con el contenido de lo que a continuación escribamos. Lo que haces es tomar la entrada estándar (teclado en este caso) y lo pasa a la salida estándar, que en este caso está direccionada hacia el fichero nuevo_texto. Para salir correctamente despues de escribir presionamos enter y despues ctrl + D.
El comando cat admite los siguientes modificadores.
Modificador Resultado -n Hace que se enumeren las líneas mostradas empezando con 1 -b Hace que se enumeren las líneas mostradas, pero no se numeran las líneas en blanco (vacías)
Ejemplo
Visualizamos un fichero que contiene información previamente editada $ls ip_direcciones $cat ip_direcciones bssm1 172.16.3.25 bsmbin bgt#6sw
bssm2 172.16.3.201 bsmbin bgt#6sw
bssm3 10.244.12.25 Guaperf switch
Visualizamos el fichero y enumeramos cada fila incluye las vacias. $ls ip_direcciones $cat -n ip_direcciones 1 bssm1 172.16.3.25 bsmbin bgt#6sw 2 3 bssm2 172.16.3.201 bsmbin bgt#6sw 4 5 bssm3 10.244.12.25 Guaperf switch
Visualizamos el fichero y enumeramos únicamente las filas que contengan datos. $ls ip_direcciones $cat -b ip_direcciones 1 bssm1 172.16.3.25 bsmbin bgt#6sw
2 bssm2 172.16.3.201 bsmbin bgt#6sw
3 bssm3 10.244.12.25 Guaperf switch
Creando un pequeño fichero editandolo desde la entrada estándar. $cat > archivo_prueba Esta es una prueba simple editando desde la entrada estandar #presione enter #después CTRL + D $ #salimos correctamente $cat archivo_prueba Esta es una prueba simple editando desde la entrada estandar
7 Robo Lineas Electricas 8 DTRU 9 Terminal Optico 10 Intermitencia >= 20 min 11 Sitio Implementacion 12 Alarma VSWR 13 TMA Alarmados 14 Radio Enlace 15 Corte Fibra Optica 16 Causa Pruebas Ericsson 17 RAU 18 Ruta TX 19 Falla Energia 20 Radio Bloqueado 21 CDU 22 sincronizacion 23 VSWR 24 Guia de Onda 25 NCS 26 MMR 27 Level Rx 28 Level Tx 29 BSCID 30 Conectores cobre 31 Conectores BNC 32 Dual pole 33 FER 34 BER 35 Azimuth 36 Tilt 37 Actualizaciones 38 Recargas 39 reset logico 40 reset fisico 41 Microondas 42 CI 43 LQ 44 Proteccion 45 fusibles 46 radio alarmados 47 alarma termica 48 GOS 49 outage > 20 min 50 Causa Desconocida
Mostrara el archivo completo, pero unicamente en intervalo de líneas definidas. $more -5 logs 1 Robo Sistema Radiante 2 Energia Comercial 3 Enlace TX 4 Intermitencia < 20 min. 5 DXU --More—(12%)
Inicia mostrando en pantalla desde la posición que especificamos hacia delante. $more + 45 Logs 45 fusibles 46 radio alarmados 47 alarma termica 48 GOS 49 outage > 20 min 50 Causa Desconocida
Realiza un salto buscando la cadena definida y muestra en pantalla con un margen de 2 lineas de la cadena buscada $more +/LQ Logs
...skipping 41 Microondas 42 CI 43 LQ 44 Proteccion 45 fusibles 46 radio alarmados 47 alarma termica 48 GOS 49 outage > 20 min 50 Causa Desconocida
Despliega únicamente lo que entra en el espacio de la pantalla, y lo restante lo muestra sin desplazamiento continuo, separandolo por --More--( %) $more -p Logs 1 Robo Sistema Radiante 2 Energia Comercial 3 Enlace TX 4 Intermitencia < 20 min. 5 DXU 6 E 7 Robo Lineas Electricas 8 DTRU 9 Terminal Optico 10 Intermitencia >= 20 min 11 Sitio Implementacion 12 Alarma VSWR
Para avanzar y retroceder por el texto paginado podemos utilizar, además de las teclas de more , las teclas de desplazamiento. Y para salir necesitamos teclear al final q.
Sirve para mostrar por la salida estándar las últimas líneas de un fichero. Comando: tail Sintaxis: tail [modificador] fichero
El comando por defecto muestra las 10 últimas líneas, pero podemos seleccionar otro número definido en [modificador].
Modificador Resultado -### Indica el número ### de líneas que mostrara desde la última hasta la especificada.
Ejemplo
Muestra las ultimas 3 líneas del fichero $tail -3 Logs 48 GOS 49 outage > 20 min 50 Causa Desconocida
Si no se define el numero de líneas a desplegar, por defecto mostrara las ultimas 10 líneas. $tail Logs 41 Microondas 42 CI 43 LQ 44 Proteccion 45 fusibles 46 radio alarmados 47 alarma termica 48 GOS 49 outage > 20 min 50 Causa Desconocida
Sirve para mostrar por la salida estándar las primeras líneas de un fichero. Comando: head Sintaxis: head [modificador] fichero
El comando por defecto muestra las 10 primeras líneas, pero podemos seleccionar otro número definido en el [modificador].
Modificador Resultado -### Indica el número ### de líneas que mostrara desde la primera hasta la especificada.
Ejemplo
Muestra las primeras 3 líneas del fichero $head -3 Logs 1 Robo Sistema Radiante 2 Energia Comercial 3 Enlace TX
Si no se define el numero de líneas a desplegar, por defecto mostrara las primeras 10 líneas. $head Logs 1 Robo Sistema Radiante 2 Energia Comercial 3 Enlace TX 4 Intermitencia < 20 min. 5 DXU 6 E 7 Robo Lineas Electricas 8 DTRU 9 Terminal Optico 10 Intermitencia >= 20 min
Sirve para contar las líneas, palabras y caracteres que contiene un fichero. Comando: wc Sintaxis: wc [modificador] fichero
wc (word count), Por defecto cuenta estas tres cosas, (líneas – palabras – caracteres). Para cada fichero procesado por el comando escribe en la salida estándar 4 columnas con el siguiente orden.
Además, si se procesan varios ficheros, al final se muestran independiente cada resultado y además realiza una suma total de fichero procesados.
Modificador Resultado -w Solo muestra el numero de palabras -c Solo muestra el numero de caracteres -l Solo muestra el numereo de líneas
Ejemplo
Realicemos el conteo de cuantas líneas, palabras y caracteres del fichero Logs. $wc Logs 50 139 934 Logs