COMANDOS BÁSICOS DE LINUX OCTUBRE DE 2008
1. El prompt El prompt del shell de Linux tiene la siguiente forma: nombreusuario@maquina ~ $ * nombreusuario – representa el nombre del usuario conectado * maquina – representa el nombre del equipo (el host) * ~ es un acceso directo (atajo) que significa el directorio personal /home/usuario * $ significa que está conectado como usuario, cuando aparezca el gatito es que estas como root.
2. Variables de entorno # HOME contiene el directorio del usuario # USER contiene el login del usuario # PWD contiene el directorio actual
# SHELL contiene el nombre del Shell de conexión # PATH contiene la lista de directorios donde se encuentran los comandos que el usuario puede ejecutar # HOSTNAME contiene el nombre del equipo
# HOSTSIZE contiene el tamaño máximo de los comandos ejecutados contenidos en el archivo histórico Para imprimir el contenido de una variable de entorno podemos utilizar el comando echo, por ejemplo: echo $PATH 3. addgroup Se utiliza para crear un grupo nuevo. Sintaxis: addgroup nombre_grupo. Ejemplo:
Agregar un grupo es una tarea administrativa así que tenemos que hacer con el usuario root o bien anteponer a la sintaxis el comando sudo como se muestra en el ejemplo.
4. adduser Se utiliza para añadir un usuario. En ese momento, no solo se creará la cuenta del usuario sino también su directorio de trabajo, un nuevo grupo de trabajo que se llamará igual que el usuario y añadirá una serie de ficheros de configuración al directorio de trabajo del nuevo usuario. Sintaxis: adduser nom_usuario [nom_grupo] Ejemplo:
Agregar un usuario es una tarea administrativa así que tenemos que hacer con el usuario root o bien anteponer a la sintaxis el comando sudo como se muestra en el ejemplo. 3. Alias
En ciertas ocasiones se suelen utilizar comandos que son difíciles de recordar o que son demasiado extensos, pero en Linux existe la posibilidad de dar un nombre alternativo a un comando con el fin de que cada vez que se quiera ejecutar, sólo se use el nombre alternativo. Sintaxis: alias nom_alias=’comando’ Ejemplo:
4. aptget install (paquetes)
Instala paquetes. Ejemplo:
Instalar un paquete es una tarea administrativa así que tenemos que hacer con el usuario root o bien anteponer a la sintaxis el comando sudo como se muestra en el ejemplo. 5. aptget remove (paquete) Borra paquetes. Con la opción purge borramos tambien la configuración de los paquetes instalados.
Remover un paquete es una tarea administrativa así que tenemos que hacer con el usuario root o bien anteponer a la sintaxis el comando sudo como se muestra en el ejemplo.
6. aptget update Actualiza la lista de paquetes disponibles para instalar.
Ejemplo:
Actualizar la lista de paquetes disponibles es una tarea administrativa así que tenemos que hacer con el usuario root o bien anteponer a la sintaxis el comando sudo como se muestra en el ejemplo. 7. aptget upgrade Instala las nuevas versiones de los diferentes paquetes disponibles. Ejemplo:
Instalar las ultimas versiones de los paquetes es una tarea administrativa así que tenemos que hacer con el usuario root o bien anteponer a la sintaxis el comando sudo como se muestra en el ejemplo.
8. bash, sh Existen varias shells para Linux, KornShell (ksh), BourneShell (sh), CShell (csh), bash. Sintaxis: bash / sh / ksh / csh. Ejemplo:
9. cal Muestra el calendario.
Sintaxis: cal [[mes] año].
10. Cat Muestra el contenido del archivo en pantalla en forma continua, el prompt retornará una vez mostrado el contenido de todo el archivo. Permite concatenar uno o mas archivos de texto. Sintaxis: cat nom_archivo. Ejemplo:
11. cd Cambia de directorio. Sintaxis: cd nom_directorio. cd sin parametros nos llevara al directorio home del usuario cd .. nos llevara un nivel arriba en el arbol de directorios
12.chgrp Cambia el grupo al que pertenece el archivo. Sintaxis: chgrp nom_grupo nom_archivo. cambiar el grupo a un archivo es una tarea administrativa así que tenemos que hacer con el usuario root o bien anteponer a la sintaxis el comando sudo como se muestra en el ejemplo.
13. chmod Utilizado para cambiar la proteción o permisos de accesos a los archivos. r:lectura w:escritura x:ejecución +: añade permisos :quita permisos u:usuario g:grupo del usuario o:otros Sintaxis: chmod permisos nom_archivo Ejemplo:
Un usuario solo puede cambiar los permisos de sus propios archivos, el usuario root puede cambiar los permisos de los archivos de todos los usuarios. 14. chown Cambia el propietario de un archivo. Sintaxis: chown nom_propietario nom_archivo. Cambiar el propietario de un archivo es una tarea administrativa así que tenemos que hacer con el usuario root o bien anteponer a la sintaxis el comando sudo como se muestra en el ejemplo. Ejemplo:
15. clear Limpia la pantalla, y coloca el prompt al principio de la misma. Sintaxis: clear.
16. cmp, diff Permite la comparación de dos archivos, línea por línea. Es utilizado para comparar archivos de datos. Sintaxis: diff nom_archivo1 nom_archivo2 / cmp nom_archivo1 nom_archivo2. Ejemplo:
17. cp Copia archivos en el directorio indicado. Sintaxis: cp nom_archivo nom_directorio. Ejemplo:
Se puede copiar un archivo a un directorio como en el primer caso del ejemplo Se puede copiar el mismo archivo con otro nombre Se puede hacer una copia de un directorio entero utilizando el parametro r
18. cut Tiene como uso principal mostrar una columna de una salida determinada. La opción c nos sirve para delimitar cuantos caracteres deseamos mostrar. Sintaxis: cut [opciones] nom_archivo. Ejemplo:
19. date Retorna el día, fecha, hora (con minutos y segundos) y año. Sintaxis: date. Ejemplo:
Tambien podemos usar las variables del comando para personalizar la salida de la fecha y hora: date +"Hola Christian hoy es %A %d de %B del %Y y son las %H:%M"
20.delgroup Se utiliza para eliminar un grupo. Sintaxis: delgroup nom_grupo.
Eliminar un grupo es una tarea administrativa así que tenemos que hacer con el usuario root o bien anteponer a la sintaxis el comando sudo como se muestra en el ejemplo.
21. deluser Elimina una cuenta de usuario. El problema de este comando es que no elimina automáticamente el directorio de trabajo del usuario. Sintaxis: deluser nom_usuario. Ejemplo:
Eliminar un usuario es una tarea administrativa así que tenemos que hacer con el usuario root o bien anteponer a la sintaxis el comando sudo como se muestra en el ejemplo.
22.df Muestra los sistemas de ficheros montados. Sintaxis: df Ejemplo:
23. du Sirve para ver lo que me ocupa cada directorio dentro del directorio en el que me encuentro y el tamaño total. Sintaxis: du Ejemplo:
24. echo Muestra un mensaje por pantalla. Sintaxis: echo "Cadena". Ejemplo:
25. eject Mediante la utilización de este comando se conseguirá la expulsión de la unidad de CD, siempre y cuando esta no esté en uso. Sintaxis: eject.
26. exit Cierra las ventanas o las conexiones remotas establecidas o las consolas abiertas. También sirve para cerrar un script. Sintaxis: exit.
27. File Determina el tipo del o los archivo(s) indicado(s). Sintaxis: file nom_archivo. Ejemplo:
28. find Busca los archivos que satisfacen la condición en el directorio indicado. Sintaxis: find nom_directorio o nom_archivo condición. Ejemplo:
29. finger Permite encontrar información acerca de un usuario. Sintaxis: finger / finger usuario.
Ejemplo:
30. free Muestra información sobre el estado de la memoria del sistema, tanto la swap como la memoria física. También muestra el buffer utilizado por el kernel. Sintaxis: free.
31. grep Su funcionalidad es la de escribir en salida estándar aquellas líneas que concuerden con un patrón. Busca patrones en archivos o en redireccionamientos.
En el ejemplo anterior se busco la cadena zepe dentro del archivo nombres, se uso tuberias. en el segundo ejemplo se hizo un listado del contenido del directorio /home y dentro del resultado se busco si estaba la cadena james, también se utilizo tuberías.
32.gzip Comprime solo archivo utilizando la extensión .gz Sintaxis: gzip nom_archivo.
33. head Muestra las primeras lineas de un archivo Sintaxis: head numero_lineas nom_archivo.
34. history Lista los más recientes comandos que se han introducido en la ventana. Es utilizado para repetir comandos ya tipeados, con el comando !. Sintaxis: history
35. id Presenta el Numero id de un usuario. Sintaxis: id
36.ifconfig Obtener información de la configuración de red. Sintaxis: ifconfig.
37. kill Permite interactuar con cualquier proceso mandando señales. Kill (pid) termina un proceso y Kill 9 (pid) fuerza a terminar un proceso en caso de que la anterior opción falle. Sintaxis: kill [opciones] PID. Primero se tiene que listar los procesos que se encuentran en ejecución de determinado usuario:
La primera columna nos dice el process id, ese es el número que tenemos que usar para matar un proceso.
La orden anterior cerraría la consola que estamos usando.
38.Last Este comando permite ver las últimas conexiones que han tenido lugar. Sintaxis: last.
39. ln Sirve para crear enlaces a archivos, es decir, crear un fichero que apunta a otro. Puede ser simbólico si usamos s o enlace duro. Sintaxis: ln [s] nom_archivo nom_acceso.
En el ejemplo primero listamos en formato largo al archivo nombres para ver sus permisos y en la columna de número de enlaces vemos que sólo tiene un enlace. En la siguiente ejecución con el comando ln creamo un enlace a dicho archivo llamados
names y en luego volvemos a listar las propiedades del archivo, podemos apreciar que el número de enlaces ya es 2. Finalmente con el comando cat vemos el contenido de ambos archivos para constatar que ambos tiene el mism contenido y lo que afectea uno lo hara al otro. un enlace simbólico es un fichero que apunta a otro fichero. Viene a ser como los accesos directos de windows. Si borras el enlace, el fichero original seguirá existiendo; y si borras el original, el enlace quedará "huerfano". En cambio, un enlace no simbólico (o enlace duro) es un enlace a nivel de inodo, es decir, ambos ficheros hacen referencia al mismo bloque de datos en el disco duro, solo que con distinto nombre (y permisos). Mientras uno de ellos exista los datos permanecerán almacenados en el disco. 40.Ls Lista los archivos y directorios dentro del directorio de trabajo. Sintaxis: ls.
Este comando tiene muchos parámetros los más usados son l para formato largo
ld para formato largo de una carpeta a archivos ocultos
41. lsmod Muestra los módulos cargados en memoria. Sintaxis: lsmod.
42. man
Ofrece información acerca de los comandos o tópicos del sistema UNIX, así como de los programas y librerías existentes. Sintaxis: man comando.
Ejemplo:
$ ma ls
$ man cp
$ man
43. mkdir Crea un nuevo directorio. Sintaxis: mkdir nom_directorio. Ejemplo:
44.mv Este comando sirve para mover o renombrar un archivo.
Ejemplo:
Se van a mover los archivos nombres, nombres2 y nombres3 a la carpeta que creamos en el ejemplo pasado.
Vamos a renombrar.
45.more Muestra el archivo en pantalla. Presionando enter, se visualiza linea por linea. Presinando la barra espaciadora, pantalla por pantalla. Si desea salir, presiona q. Sintaxis: more nom_archivo. Ejemplo:
46. mount En Linux no existen las unidades A: ni C: sino que todos los dispositivos "cuelgan" del directorio raíz /. Para acceder a un disco es necesario primero montarlo, esto es asignarle un lugar dentro del árbol de directorios del sistema. Sintaxis: mount t sistema_de_archivo dispositivo nom_directorio. Ejemplo: Se va a montar una memoria usb (sdb1) en el directorio memoria que depende del directorio /media. Las memorias usb usan sistema de archivos fat32. Montar una unidad es una tarea administrativa, por lo que hay que hacerla como usuario root o anteponiendo el comando sudo a la instrucción como se muestra en el ejemplo. 47. netstat Muestra las conexiones y puertos abiertos por los que se establecen las comunicaciones. Sintaxis: netstat.
48. passwd Se utiliza para establecer la contraseña a un usuario. Sintaxis: passwd nom_usuario. Cabe mencionar que como usuario normal solo puedes cambiar tu propio password como lo muestro en el ejemplo siguiente, si quieres cambiar el password a cualquier otro usuario tendras que tener privilegios de root.
49. ping
El comando ping se utiliza generalmente para testear aspectos de la red, como comprobar que un sistema está encendido y conectado; esto se consigue enviando a dicha máquina paquetes ICMP. El ping es útil para verificar instalaciones TCP/IP. Este programa nos indica el tiempo exacto que tardan los paquetes de datos en ir y volver a través de la red desde nuestro PC a un determinado servidor remoto. Sintaxis: ping (maquina). Ejemplo: Vamos a mandar un ping a nuetro router.
50. poweroff
Apagar la computadora. También necesitas privilegios de root para hacer esta tarea. Sintaxis: poweroff.
Ejemplo: 51. Procesos Cada aplicación que se ejecuta dentro de un sistema Linux es un proceso. Algunos procesos están ejecutándose sin que nosotros lo sepamos. Otros procesos comienzan a ejecutarse cuando nosotros se lo indicamos. Cada proceso que se ejecuta dentro de nuestra computadora tiene un número que lo identifica, llamado Process ID (PID). Este número será el que deberemos utilizar para referirnos a ese proceso con otros comandos.
52. ps
Muestra información acerca de los procesos activos. Sin opciones, muestra el número del proceso, terminal, tiempo acumulado de ejecución y el nombre del comando. Sintaxis: ps.
Ejemplo: Vamos a revisar los procesos.
53.pstree Muestra un árbol de procesos. Sintaxis: pstree. Ejemplo: vamos a mostrar los arboles de procesos que ha generado el usuario christian.
54. pwd Muestra el directorio actual de trabajo. Sintaxis: pwd.
55. reset Si observamos que escribimos en pantalla y no aparece el texto pero al pulsar enter realmente se está escribiendo, o que los colores o los textos de la consola se corrompen, puede ser que alguna aplicación en modo texto haya finalizado bruscamente no restaurando los valores estándar de la consola al salir. Con esto forzamos unos valores por defecto, regenerando la pantalla.
Sintaxis: reset. 56. rm Remueve o elimina un archivo. Sintaxis: rm nom_archivo. Ejemplo: vamos a eliminar un archivo que esta en el directorio actual.
57. rmdir Elimina el directorio indicado, el cual debe estar vacío. Sintaxis: rmdir nom_directorio. Ejemplo: En el ejemplo vamos a eliminar el directorio carpetanueva, pero no lo vamos a conseguir porque dicho directorio no esta vacio, posteriormente trataremos de borrar el directorio carp que si esta vacio, en esta ocasión si se conseguira.
Si queremos eliminar una carpeta que no esta vacia debemos de utilizar el comando rm con el parametro r.
58. sort
Muestra el contenido de un fichero, pero mostrando sus líneas en orden alfabético. Sintaxis: Sort [opciones] nom_archivo.
Ejemplo: En el ejemplo mostramos con sort el archivo nombres, y los ordena
alfabeticamente, si agregamos el parametro r, los ordenara alfabeticamente pero decrecientemente.
59. tail
Este comando es utilizado para examinar las últimas líneas de un fichero.
Sintaxis: tail count nom_archivo. Vamos a visualizar las ultimas tres lineas del archivo nombres.
60. tar
Comprime archivos y directorios utilizando la extensión .tar. Sintaxis: tar [arg] nom_archivo.tar nom_archivo.
Ejemplo: Vamos a empaquetar los archivos nombres y nombres3, el archivo resultante se llamara empaketados.tar.
En el siguiente ejemplo se muestra el procedimiento para desempaquetarlos.
61. touch Crea un archivo vacio. Sintaxis: touch nom_archivo.
Ejemplo:
61. umask Establece la máscara de permisos. Los permisos con los que se crean los directorios y los archivos por defecto. Sintaxis: umask arwx,u+rw,g+r. Ejemplo: En el ejemplo creamos un archivo de texto vacio y luego vemos sus permisos, posteriormente establecemos la mascara de permisos y creamos otro nuevo archivo, ahi podemos ver como el segundo archivo que creamos nace con los nuevos permisos.
62. umount Sirve para desmontar una unidad. Ejemplo: Vamos a desmontar la memoria usb que montamos anteriormente.
63. unalias Borra un alias. Sintaxis: unalias nom_alias. Ejemplo:
64. uptime Nos indica el tiempo que ha estado corriendo la máquina. Sintaxis: uptime. Ejemplo:
65. wc Cuenta los caráteres, palabras y líneas del archivo de texto. Sintaxis: wc nom_archivo. Ejemplo: En este ejemplo estamos contando las palabras con w, los caracteres c. y las lineas l que tiene el archivo nombres.
66. who, w Lista quienes están conectado al servidor, con nombre de usuario, tiempo de conexión y el computador remoto desde donde se conecta. Sintaxis: who / w. Ejemplo:
67. whoami Escribe su nombre de usuario en pantalla. Sintaxis: whoami.
68. less Este comando es similar al comando more, que vimos anteriormente, este comando permite paginar la salida de un comando o bien la visualización del contenido de un archivo. Sintaxis: less archivo Al hacer esto veremos la primera página del archivo. Si este archivo es lo suficientemente largo, podremos movernos hacia abajo y hacia arriba una página utilizando la teclas avance de página y retroceso de página, la tecla inicio, fin para ir al principio y final del documento respectivamente, la tecla enter para bajar una línea, la barra espaciadora para bajar una página, y las teclas de dirección izquierda y derecha para desplazarnos horizontalmente, las teclas de dirección arriba y abajo para subir y bajar una línea, etc.
Para salir, utilizamos q. 69. top El comando top nos muestra algunos de los procesos que se están ejecutando, ordenados por el tiempo de procesador de la computadora que consumen. Muestra algunos datos adicionales de cada proceso, por ejemplo, en la primera columna, podemos observar el PID de cada uno. Este comando es similar al administrador de tareas de Windows.
Además, muestra otros datos acerca del uso que se le esta dando a la máquina. Para salir de este comando tenemos que pulsar la tecla q.
70.info Este comando es parecido al comando man. La información que nos muestra este comando es un poco más amplia.