[ anterior ] [ Contenidos ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ siguiente ]
A continuación presentamos algunos de los comandos que más solemos usar con algunas de sus opciones. Hay que destacar otra vez que una descripción detallada del funcionamiento y opciones de estos comandos puede obtenerse con man comando.
El UNIX ofrece la posibilidad de cambiar el input o entrada de un programa (por defecto el teclado) y su output o salida (por defecto la pantalla). Un comando normalmente comunica con nosotros a través de los tres canales siguientes:
standard input - teclado
standard output - pantalla
standard error output - pantalla
En UNIX podemos conectar cada uno de estos canales con un fichero, de modo que la salida de un programa puede ser utilizada por otro programa. Por ejemplo, podemos:
almacenar la salida de un comando en un fichero. Por ejemplo almacenar la salida del comando w en un fichero:
thorin@gondor:~$ w > salida_w thorin@gondor:~$ thorin@gondor:~$ cat salida_w 09:41:37 up 1 day, 1:30, 5 users, load average: 0.0, 0.02, 0.0 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT frodo :0 - Mon08 ?xdm? 0.00s ? - frodo pts/2 :0.0 Mon08 22:54m 54.39s 0.17s -bash frodo pts/1 :0.0 Mon08 43:25 0.07s 0.01s mutt root pts/5 tirith.tmedia.es Mon10 22:54m 0.02s 0.02s -bash frodo pts/8 :0.0 Mon11 0.00s 1.44s 0.01s w fofo pts/11 rhun.tmedia.es Mon11 13:16m 2:31 0.03s -bash
Mandar solo los mensajes de error a un fichero: comando 2> fichero
Mandar la salida y los mensajes de error de un comando a un fichero:comando &> fichero
Añadir la salida de error de un comando a un fichero (no borra el fichero si este ya existe, a diferencia de en los tres casos anteriores): comando > > fichero
Especificar a un comando que lea los datos de entrada de un fichero en lugar de hacerlo desde el teclado: comando < fichero}
Usar la salida de un comando como datos de entrada para otro comando, en lo que se conoce como una tubería o pipe: comando_1 | comando_2+
Combinar estas posibilidades: comando_1 < fichero.in | comando_2 > fichero.out
Comandos que permiten trabajar con ficheros y directorios desde la consola.
ls: mostrar el contenido de directorios
ls opciones directorio
Opciones:
-a muestra todos los ficheros, incluyendo los invisibles (aquellos que comienzan por un punto ".").
-l formato largo (información detallada).
-S ordena los ficheros de acuerdo con su tamaño.
-F clasifica los tipos de ficheros.
-R listado recursivo.
pwd: imprimir el nombre del directorio actual
cd: cambiar el directorio actual a otro directorio.
mkdir: crear un directorio nuevo.
mkdir [opciones] directorio
rmdir permite borrar un directorio vacío. El directorio debe estar vacío.
rmdir [opciones] directorio
cp copia uno o varios ficheros a otro fichero o a un directorio.
cp [opciones] fichero_origen fichero_destino cp [opciones] fichero_1 fichero_2 directorio_destino
Opciones:
-v verbose, informa al usuario de lo que hace.
-i interactivo, pide confirmación si otro fichero con el mismo nombre existe.
-r recursivo, copia subdirectorios y ficheros.
mv cambia el nombre de un fichero/directorio, o lo mueve a otro directorio.
mv [opciones] nombre_antiguo nombre_nuevo mv [opciones] fichero_1 fichero_2 directorio
Opciones:
-i interactivo, pregunta si existe otro fichero con el mismo nombre.
rm comando que permite el borrado de ficheros. rm [opciones] fichero_1 fichero_2
Opciones:
-v verbose, informa de lo que hace.
-i interactivo, pide confiormación antes de borrar el fichero.
-r borra archivos y directorios recursivamente (usar con precaución).
ln crear un ``link'' o enlace de un fichero a otro.
ln[opciones] nombre_fichero nombre_link
more o less muestran en pantalla un fichero de texto.
more [opciones] fichero
less [opciones] fichero
cat permite dirigir uno o varios ficheros a la salida estándar definida.
cat [opciones] fichero_1 fichero_2
El comando cat envía la información a la salida por defecto, el llamado standard output, por esta razón es útil para la para la concatenación de ficheros:
cat lista de ficheros > fichero
Podemos usar cat>fichero para crear un fichero de texto sin usar un editor. Ctrl-D señala el fin del fichero.
chmod permite cambiar los permisos asociados a un fichero.
chmod [opciones] modo fichero
El modo se puede dar absoluto (=) o relativo (+-) y es de la forma [ugoa][+-=][rwx]. También se puede usar la forma octal: chmod octal fichero
Comandos para empaquetar y comprimir ficheros.
gzip comprime ficheros.
gzip[opciones] fichero1 fichero2
El fichero (o ficheros) comprimido(s) termina con la extension .gz añadida. Para descomprimirlo hay que usar la orden gunzip.
tar empaqueta ficheros en un archivo del tipo .tar. tar [opciones] directorio/ficheros
Opciones:
x (eXtract), sacar del archivo tar.
c (Create), crear un nuevo archivo tar.
t (Type), mostrar el contenido del archivo tar.
v (Verbose), el programa informa de lo que hace.
f opción que viene seguida del nombre del archivo sobre el que se opera.
Hay muchas posibles formas de sacar partido a este comando, pero las tres formas más comunes de usarlo son:
tar cvf tarfile.tar .
Crear archivo con nombre tarfile.tar que contiene el directorio actual y todos sus subdirectorios.
tar tf tarfile.tar
Mostrar la lista de archivos contenido en el archivo tarfile.tar. {\tt tar xvf tarfile.tar} extraer los ficheros contenidos en el archivo {\tt tarfile.tar} al directorio actual
Comandos que permiten examinar y controlar los procesos presentes en el ordenador.
ps comprueba el estado de procesos
Sintaxis: ps [opciones]
Opciones:
u formato extendido que muestra los usuarios que han lanzado los procesos.
a muestra procesos de todos usuarios y no sólo de aquel que ha lanzado el comando ps.
x muestra también procesos sin terminal asociada.
fg hace que continue un comando o proceso al que se ha lanzado la señal de STOP, por ejemplo mediante Ctrl-z. Si no se especifica ningún proceso se aplica al proceso actual.
fg [jobspec]
bg hace que continue corriendo en background al que se ha lanzado la señal de STOP, por ejemplo mediante Ctrl-z. Si no se especifica ningún proceso se aplica al proceso actual.
bg [jobspec]
kill manda una señal a un proceso.
kill -s signal pid
Algunas señales:
-15: SIGTERM, termina el proceso si el programa lo detecta.
-9: SIGKILL, termina de forma abrupta el proceso.
-19: SIGSTOP, detiene el proceso.
-18: SIGCONT, continua un proceso detenido.
kill -l da una lista de todas las posibles señales.
En la shell podemos usar la combinación de teclas Ctrl-Z para parar un comando interactivo. La combinación de teclas Ctrl-C termina un comando interactivo.
top permite controlar de forma interactiva y muy eficaz los procesos.
date permite mostrar o cambiar fecha y hora del sistema.
date opciones fecha/hora
Opciones:
-s set, cambiar fecha y/u hora (sólo root).
df muestra el espacio disponible en las unidades de disco del sistema
df opciones directorio
Opciones:
-h Da el resultado en unidades comprensibles por el usuario (Mb, Gb...)
du informa acerca del espacio ocupado en un directorio.
du opciones directorio
Opciones:
-h Da el resultado en unidades comprensibles por el usuario (Mb, Gb...)
env muestra las variables de entorno o ejecuta un comando en un entorno especial
env [opciones] [comando]
who informa sobre los usuarios activos en el sistema.
who [opciones] [am i]
passwd cambiar el password o contraseña de acceso al sistema.
passwd usuario Sólo el root puede cambiar el password de otros usuarios.
Estos comandos suelen usarse en los llamados scripts, que son programas, generalmente breves, interpretados por la shell.
echo muestra por la salida estándar una linea de texto o una variable de entorno.
echo [opciones] [texto]
echo [opciones][$VARIABLE]
alias asignar una equivalencia a un nombre, definiendo un alias.
alias nombre=equivalencia El alias se puede usar para redefinir comandos, por ejemplo:
alias ls=''ls -F''
export asigna un valor a una variable y hacerla visible a todos los procesos que se generen a partir de esa sesión.
export variable=valor
Ejemplo: export MYBIN=/home/frodo/bin
En un shell script se pueden realizar bucles y cálculos aritméticos. Por
ejemplo, usando la sintaxis de bash
let ab=1 echo $ab while test $ab -le 10 do echo $ab cp fil fil$ab let ab=ab+1 done
Estos comando suelen ser utilizados por el superusuario o por algún usuario actuando con privilegios de superusuario.
adduser crea una cuenta para un nuevo usuario.
adduser username
El comando adduser es interactivo y de fácil empleo. Pregunta por todos los datos necesarios.
deluser elimina una cuenta de un usuario.
deluser username
shutdown apaga el sistema.
shutdown opciones hora mensaje
Opciones:
-r reboot, reiniciar el ordenador después del shutdown.
-h halt, apagar la máquina.
Ejemplos:
shutdown -h now (apagar inmediatamente)
shutdown -r +10 (Una vez que pasen diez minutos reiniciar el ordenador)
mount permite montar un sistema de ficheros.
mount [opciones] device directorio
umount permite desmontar un sistema de ficheros.
umount directorio
find permite encontrar ficheros y realizar acciones con estos ficheros.
find directorio inicial expresión
Expresión: esta expresión constituye la regla de búsqueda del fichero.
-name patrón_de_búsqueda: busca el nombre del fichero.
-iname patrón_de_búsqueda: igual que el anterior, sin distinción entre mayúsculas y minúsculas.
-size [+-]size: busca de acuerdo con el tamaño size.
-gid n: ficheros con GID igual a n.
-uid n: ficheros con UID igual a n.
-perm [+-] ficheros con derecho de acceso
Operadores:
-notexpr verdadero si expr es falso.
expr1 -and expr2 verdadero si expr1 y expr2 son verdaderas.
expr1 -or expr2 verdadero si expr1 o expr2 son verdaderas.
Acción:
-print mostrar el nombre de los ficheros encontrados.
-exec comando; ejecutar comando sobre el fichero encontrado.
grep busqueda de patrones de texto en ficheros.
grep [opciones] [expresión regular] ficheros
-G regular_pattern: Patrón de búsqueda.
-E regular_pattern: Patrón de búsqueda extendido.
-F regular_pattern: lista de cadenas.
-i No diferencia entre mayúsculas y minúsculas.
-v regular_pattern selecciona aquellos ficheros que no contienen el patrón proporcionado.
Algunas expresiones útiles para su inclusión en los patrones de búsqueda son
[01234abc] significa cualquier carácter de la lista entre corchetes.
[a-z] da un rango de caracteres.
. implica cualquier carácter.
[ anterior ] [ Contenidos ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ siguiente ]
Comprendiendo el Sistema: Comandos Básicos
Version 0.01francisco.perez@dfaie.uhu.es