0157 El Shell Comandos Basicos de Linux
0157 El Shell Comandos Basicos de Linux
Cualquier usuario de Linux acabará antes o después relacionándose con el sistema empleando
el modo texto, y no los entornos gráficos. Este modo se basa en la ejecución de una serie de
comandos, que son interpretados por un programa o shell. Linux dispone de varios de estos
programas, pero el más habitual es conocido como bash o Bourne Shell. Si Linux se ha arrancado en
modo texto el sistema arranca de forma directa el shell y queda a la espera de introducción de
nuevos comandos. Si se ha arrancado en modo gráfico se puede acceder al emulador shell de dos
formas:Se puede acceder a la shell del sistema presionando alguna de las siguientes
combinaciones de teclas:
Nota: estas instrucciones funcionan de pende de la distro que este utilizando ni en entornos
virtualizados.
➢<ctrl>+<alt>+<F1>
➢<ctrl>+<alt>+<F2>
➢<ctrl>+<alt>+<F3>
➢<ctrl>+<alt>+<F4>
➢<ctrl>+<alt>+<F5>
➢<ctrl>+<alt>+<F6>
Esto hace que el sistema salga del modo gráfico y acceda a alguna de las seis consolas
virtuales de Linux, a las cuales también se puede acceder cuando se arranca en modo de texto.
Para volver al modo gráfico hay que presionar
Página 1 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
➢<ctrl>+<alt>+<F7>
La segunda forma es más cómoda y menos radical permitiendo acceder al shell desde el
mismo entorno gráfico. Para esto hay que abrir un programa
Introducción
Existen una serie de nociones básicas que hay que tener en cuenta a la hora de introducir
los comandos. En primer lugar, citaremos las siguientes:
En su forma más habitual (los shells de Bourne o de Korn), el sistema operativo utiliza un
signo de $ como prompt para indicar que está preparado para aceptar comandos, aunque
este carácter puede ser fácilmente sustituido por otro u otros elegidos por el usuario.
En el caso de que el usuario acceda como administrador (root) este signo se sustituye por
#.
Programas Documentos_proyecto
Documentos_privados
Autocompletado en linux
Al escribir cd Pr<tab> Linux rellenará el resto del contenido hasta escribir cd Programas.
Por el contrario, al escribir cd D<tab> escribirá cd Documentos
Los comandos poseen parámetros y argumentos
Página 2 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
Sintaxis de los comandos
Cuando se quiere que el comando sea de varias líneas, se separa cada línea con el carácter
barra invertida (/). Además, cuando se quiere ejecutar varios comandos en la misma línea,
los separa con punto y coma (;). Por ejemplo:
Página 3 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
Trabajando en un terminal.
Es difícil que hagamos de GNU/Linux nuestro entorno de trabajo habitual sin utilizar nunca la
línea de comandos (la verdadera alma de Linux) Vamos a efectuar un primer acercamiento.
Una vez en el terminal conviene familiarizarse con la línea de comandos. Lo que vemos es un
mensaje del sistema (prompt de la shell). Nos informa de que usuario soy (estudiante) como se
llama mi ordenador (debian) y en que carpeta o directorio me encuentro (:~ que significa el
directorio del usuario
/home/estudiante) y un separador $. El símbolo del separador es importante: Se utiliza el símbolo de
dólar ($) para los usuarios normales y el símbolo # para significar que es el root el que está dando
órdenes.
$su
Página 4 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
Tras lo cual el sistema nos pedirá la contraseña de root y, si es correcta, cambiará a modo
de root. Observa cómo cambia el prompt:
cd [directorio]
Donde 'cd' es el comando y lo que está entre corchetes es el argumento, al estar entre
corchetes es opcional.
Para movernos de un directorio a otro usamos este comando, tenemos 2 formas de nombrar
un directorio: la primera es por su ruta absoluta y la segunda es por su ruta relativa. La absoluta se
refiere al nombre completo empezando desde '/', un ejemplo sería ir a /etc (yo estoy en
/home/estudiante).
Página 5 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
estudiante@debian:~$ cd /etc
estudiante@debian:/etc]$
Esto tiene un problema, ya que siempre tenemos que escribir la ruta completa a donde
queramos ir. Para no tener que hacerlo, usamos las rutas relativas: ponemos el nombre del directorio
que queremos entrar, pero a partir desde el que estamos. Para ver esto volveremos a
/home/estudiante (en nuestro caso el directorio de trabajo nuestro) y de allí iremos a
/home/estudiante/Documentos.
estudiante@debian:/etc]$ cd /home/estudiante
estudiante@debian:~$ cd Documentos
estudiante@debian:~/Documentos$
En el primer caso hemos usado de nuevo una ruta absoluta y en el segundo como ya
estábamos en /home/estudiante hemos puesto solo Documentos para entrar en
/home/estudiante/Documentos, que sería su ruta
absoluta.
Dentro de todo directorio existen dos directorios especiales que son '.' y '..'. El primero hace
referencia al directorio actual, es decir, si haces 'cd .' te quedas donde estás (el directorio especial '.'
ya veréis más adelante lo útil que es), y el segundo hace referencia al directorio padre, o sea,
si estamos en
/home/estudiante y hacemos 'cd ..' terminaremos en /home.
estudiante@debian:~$ cd .
estudiante@debian:~$ cd ..
estudiante@debian:/home]$
Estos dos directorios especiales los usaremos en la rutas relativas, es lo mismo hacer 'cd
./Documentos' que 'cd Documentos' que para este comando en concreto nos da lo mismo
Página 6 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
pero en otros puede que necesitéis usar './'.
Imaginaros que desde /home/estudiante quiere entrar (si tuvierais otro usuario llamado así) en
/home/kronem, para no escribir la ruta absoluta recurriremos a 'cd ../kronem' y conseguimos
mediante una ruta relativa dar un salto atrás en el árbol y entrar en 'kronem'
estudiante@debian:~$ cd Documentos
estudiante@debian:~/Documentos]$ cd ..
estudiante@debian:~$ cd ./Documentos
estudiante@debian:~/Documentos]$ cd ..
estudiante@debian:~$ cd ../kronem
estudiante@debian:/home/kronem$
Bueno pues no se vayan todavía, aún hay más. Hay una referencia especial, estemos donde
estemos si hacemos 'cd ' volvemos a nuestro directorio de trabajo ya que (bajo consola lo
conseguimos pulsando la tecla Alt Gr +4) es una referencia a nuestro directorio de trabajo.
estudiante@debian:~$ cd /usr/bin
estudiante@debian:/usr/bin]$ cd ~
estudiante@debian:~$
Con esto ya hemos visto este comando tan simple pero útil. Se consigue el
mismo resultado escribiendo 'cd'.
Si nos perdemos, bien por que hemos enredado mucho moviéndonos por el árbol de
directorios o bien porque nuestro prompt no nos indica en cada momento dónde estamos, tenemos
un comando bien sencillo:
estudiante@debian:~$ pwd
/home/estudiante
estudiante@debian:~$
Antes de continuar...
Página 7 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
Antes de continuar hay que comentar una cosa, para evitar confusiones explicaré un poco
los 'alias'. El intérprete de comandos nos da la opción de definirnos lo que denominaremos 'alias',
por ejemplo, puedes hacer que la palabra 'casa' ejecute 'cd~', parece una bonita forma de crear
comandos a nuestro gusto. Algunos de los comandos que aquí explicaré tienen definidos alias en
muchas distribuciones por lo que el resultado puede que no sea el mismo. Si esto os ocurre teclead:
'alias COMANDO_QUE_FALLA=COMANDO_QUE_FALLA'
(ojo, sin espacios en el igual), por ejemplo, si cuando hicierais 'cd' os mandara a /usr/bin (es
un ejemplo raro, pero bueno) bastaría con ejecutar 'alias cd=cd'.
Para ver qué alias tenéis definidos ejecutad 'alias -p'
Lo que veremos a continuación es muy probable que tengas que hacerlo para que salga lo
mismo que te estoy explicando. El uso de alias sobre todo se utiliza para ejecutar por defecto
opciones muy útiles sin tener que escribirlas siempre, incluso si vienes del mundo de MS-DOS
puedes definir todos tus comandos de siempre con los análogos en GNU/Linux, útil, ¿verdad? ;)
(aunque esto último no lo recomiendo, no es bueno coger malos vicios XD ).
Nota: los alias que definamos se esfumarán cuando cerremos nuestra sesión o reiniciemos la
máquina, pero no tengáis miedo. Ya explicaremos más adelante cómo definir las cosas
permanentemente.
Bueno, ya sabemos movernos, pero esto no nos sirve de mucho si no sabemos qué hay
en nuestros directorios. Para eso tenemos un buen comando:
ls [opciones][directorio]
Ahora ejecutaremos 'ls' tal cual y nos encontraremos con la siguiente salida:
Página 8 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
tux.dxf estudiante@debian:~/Documentos/Ejemplos$
Nos encontramos con una salida algo pobre, porque en algunos casos no sabremos ni
diferenciar qué es cada cosa: ¿un fichero?¿un directorio? . Con la
Página 9 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
estudiante@debian:~Documentos/Ejemplos$ ls -F
Boja Decreto Sociedad del Conocimiento.pdf* tux.dxf*
estudiante@debian:~/Documentos/Ejemplos$
Ahora podemos apreciar que a los directorios al final le añaden '/'. A ls también le
podemos indicar el directorio que queremos mirar:
estudiante@debian:~$ ls -F /usr/local
bin/ games/ include/ lib/ man@ sbin/ share/ src/ estudiante@debian:~/estudiante$
estudiante@debian:~/Documentos/Ejemplos$cd estudiante@debian:~$ ls -F
En este caso además vemos un * al final de estos ficheros, lo que nos indica que son
ejecutables. También podemos encontrarnos con una @ indicando que es un enlace. Otra opción
interesante y que nos será útil es '-a' que nos muestra los ficheros (acuérdate de que en GNU/Linux
todo son ficheros) ocultos.
Página 10 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
estudiante@debian:~$ ls -aF
./Documentos/ .gtkrc-1.2-gnome2 .recently-used
../ .first_login .ICEauthority .scribus/
.icons/ .sversionrc
.alias .fluxbox/ .inkscape/ .synce/
.aMule/ .fonts/ Templates/
Audio/ .themes/
Bases de .fonts.cache-1
.kde/
Datos/ Fotos/.kderc
.gconf/.liferea/ .thumbnails/
.bash_history
................................
estudiante@debian:~$
Podemos observar que aparecen más ficheros que estaban ocultos. En GNU/Linux, cualquier
fichero que empiece por '.' es un fichero oculto contando los directorios especiales '.' y '..' que
ya os comenté antes. Una opción realmente útil y que os interesará es 'l' :
estudiante@debian:~$ ls -aFl total 416
drwxr-xr-x 42 estudiante users 4096 2006-01-06 01:03 ./
drwxrwsr-x 4 root staff 4096 2006-01-04 13:22 ../
Página 11 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
Para empezar veréis que se pueden mezclar opciones y que '-l' nos da una gran cantidad
de información. La primera indica el tipo de fichero y los permisos (por ejemplo, drwxrwxr-x), los
permisos no los explicaré ahora por que no toca, pero sí comentar que la primera letra indica
qué tipo de fichero es ('d' nos indica que es directorio, '-' que es un fichero normal, 'c' que es un
dispositivo orientado a carácter, 'b' dispositivo orientado a bloque y 'l' indica que es un enlace). Lo
siguiente nos indica: el número de enlaces que existen a él, el propietario, el grupo propietario, el
tamaño en bytes, la fecha y el nombre.
Por último, ya sólo enseñaros otra opción que os gustará muchísimo '--color':
estudiante@debian:~$ ls --color
Audio bienvda.gif Compartido Desktop
Fotos prefs.js Tipos de Letra wireless
Bases de Datos bookmarks.html Descargas Documentos
P2P Templates Videos
estudiante@debian:~$
La verdad se explica por ella sola, ¿no? No seguiremos con más opciones de 'ls' porque hay
casi tantas como letras del abecedario, tanto en mayúsculas como en minúsculas, así que puedes
incluso probar 'ls' con tu nombre y demostrar lo triste que es tu vida perdiendo el tiempo en
semejantes tonterías.
Ya para finalizar sólo indicaros que, si estáis en modo consola, para cerrar la sesión hay que
teclear 'exit' o 'logout', para parar la máquina 'halt' (solo se puede hacer como root) y para reiniciarla
pulsar 'ctrl+alt+sup'.
Página 12 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
Creando directorios
Para empezar, después de haber aprendido a movernos por el sistema lo primero que
veremos es cómo crear un directorio, para ello tenemos la siguiente instrucción:
Donde como podéis apreciar podemos crear de uno a varios directorios a la vez, así que
ahora toca probarlo.
estudiante@debian:~$ mkdir curso
estudiante@debian:~$ cd curso
Como podéis ver el uso es bien sencillo, como opciones vamos a destacar '-p' que
crea los directorios padres que no existan, como vemos en el siguiente ejemplo.
estudiante@debian:~/curso$ mkdir -p ./dir1/NOEXISTO/ops
estudiante@debian:~/curso$ cd dir1
estudiante@debian:~/curso/dir1]$ ls
NOEXISTO
estudiante@debian:~/curso/dir1]$ cd NOEXISTO/
estudiante@debian:~/curso/dir1/NOEXISTO]$ ls ops
estudiante@debian:~/curso/dir1/NOEXISTO]$
Página 13 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
Y por último la opción '-m', que nos da la posibilidad de indicarle los permisos que tendrán
nuestros directorios, pero... como aún no lo hemos visto en el curso queda pendiente de que lo
probéis vosotros mismos cuando veamos cómo son los permisos. La opción -m va seguido del
modo antes de poner los directorios.
estudiante@debian:~/curso/dir1/NOEXISTO]$ cd ..
estudiante@debian:~/curso/dir1]$ cd ..
estudiante@debian:~/curso$ ls
dir1 dir2
estudiante@debian:~/curso$ ls
estudiante@debian:~/curso$
Como podéis ver se pueden borrar varios a la vez, igual que con mkdir creábamos varios a la
vez. En este caso para rmdir solo comentaré una opción interesante y es '-p'. Esta opción lo que hace
es borrar recursivamente la ruta completa que le indiquemos, por ejemplo, si tenemos /a/b/c un
'rmdir -p /a/b/c' es equivalente a 'rmdir /a/b/c' + 'rmdir /a/b' + rmdir 'a'. Vayamos al ejemplo:
Página 14 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
estudiante@debian:~/curso$ ls
dir1
estudiante@debian:~/curso$ ls ./dir1/uno
dos
estudiante@debian:~/curso$
estudiante@debian:~$ mkd
Ahora si añado una 'i' me completa con 'mkdir', ya que 'mkdir' está contenido dentro del
nombre de 'mkdirhier'. Ahora tenemos lo que buscábamos, pero si volvemos a tabular nos
escribirá 'mkdirhier'. Con lo que
Página 15 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
llegamos a la conclusión de que rellenará cuando: a) No hay otro comando que coincida con la
cadena que hayamos escrito, y b) Cuando el nombre de un comando esté contenido en otro pudiendo
seguir tabulando para llegar al otro. Cuando existen muchas posibilidades, tantas que no caben en
pantalla,
antes nos preguntará si mostrarlo o no. Por ejemplo, ejecutar:
estudiante@debian:~$ m
En mi caso he contestado con 'n' ya que no quiero ver la lista completa. Por ejemplo, si
quisiéramos ver todos los ejecutables accesibles no tendríamos más que tabular dos veces sin
escribir nada.
estudiante@debian:~$
Display all 2809 possibilities? (y or n)
estudiante@debian:~$
Todo esto es completamente aplicable a los ficheros que indicamos a nuestros comandos,
probad a escribir 'cd /e' y tabular.
Y una vez visto esto llegamos al momento en el que vamos a crear copias de los archivos,
para ello tenemos el siguiente comando:
El uso es bien sencillo, sólo hay que indicar el origen y el destino de lo que queremos copiar:
Página 16 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
estudiante@debian:~/curso$ cp /etc/fstab
estudiante@debian:~/curso$
Como vemos no se nos pide confirmación para copiar, y pudiera ocurrir que nos hubiésemos
equivocado y sobreescribiéramos un archivo que ya tuviera sin que nos pregunte, ya que 'cp'
también renombra incluyendo el nombre en el destino. Veamos un ejemplo:
Como vemos hemos copiado el archivo 'shells' que está en '/etc' a nuestro directorio
actual y con el nombre 'fstab' con lo cual hemos sobreescrito nuestro fichero original y eso puede
ser algo que no deseemos. Para hacer que nos pregunte antes de copiar usamos la opción '-i' como
vemos en el ejemplo:
estudiante@debian:~/curso$ cp -i /etc/fstab .
cp: ¿sobreescribir `./fstab'? (s/n) s
estudiante@debian:~/curso$
Bueno, ya hemos recuperado nuestro fichero original, menos mal ;) , pero 'cp' es aún más
versátil, ya que con la opción '-r' podemos copiar directorios enteros aunque es preferible usar la
opción '-R' porque '-r' no tiene un comportamiento definido (o sea que puede pasar cualquier
cosa) si se copian ficheros que no son normales como pueden ser un dispositivo. Veamos un
ejemplo:
Página 17 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
estudiante@debian:~/curso/copia_de_bin/bin]$
Y para rematar sólo queda comentar que 'cp' también tiene la opción '-p', que es igual
que en 'mkdir' y 'rmdir' así que sobran las explicaciones. Por cierto, 'cp' admite más de un origen, así
que puedes copiar varios archivos en una sola línea a un mismo destino.
Si 'cp' viene de copy entonces algunos ya habréis adivinado qué orden es la de borrar:
rm [opciones] lista_de_ficheros_a_borrar
Página 18 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
estudiante@debian:~/curso$ ls
estudiante@debian:~/curso$ rm teborrare
estudiante@debian:~/curso$ ls copia_de_bin
dir1 fstab
estudiante@debian:~/curso$
Igual que 'cp' , 'rm' también tiene la opción '-i' y también puede borrar directorios enteros con
'-r' y '-R' (en este caso ambos son iguales), aunque también se borran con '-d', pero '-d' no tiene un
carácter recursivo y deja desenlazados los ficheros que contiene (o sea que es una cagada, así
que mejor no usarla) lo que quiere decir que se quedan como diríamos sin ningún directorio que los
contenga, por lo que hay que tener mucho cuidado con esta opción.
..........
....................................
estudiante@debian:~/curso$
Página 19 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
Solo queda apuntar que, tanto 'cp' como 'rm', si '-i' hace que pregunte la opción contraria es
'-f' que no preguntará nada de nada.
Estamos en movimiento
Venga, que seguro que algunos ya se han imaginado que para mover es:
Bueno, 'mv' equivale a copiar y borrar, y al igual que 'cp' admite varios orígenes y un
directorio destino. Así que con los ejemplos vistos antes con 'cp' sobran los ejemplos, salvo para el
caso en que el origen y el destino son el mismo, pero en el destino se indica un nombre de fichero
con lo cual lo que hacemos es renombrar:
estudiante@debian:~/curso$ ls fstab
estudiante@debian:~/curso$ ls
perro
estudiante@debian:~/curso$
Como veis el directorio origen y destino es el mismo, por lo cual en el destino hemos
indicado un cambio de nombre.
Como 'mv' no tiene opción que digamos interesantes salvo quizás '-i' y '-f' (que es igual
que en 'cp' y 'rm') pues damos por finalizada la explicación.
Página 20 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
Vamos a ver el uso de los comodines, que no es ni más ni menos que una característica del
intérprete de comandos que nos permite referirnos a un conjunto de ficheros a la vez.
Empezaremos viendo primero el comodín '*': el comodín '*' hace referencia a cualquier
carácter o cadena de caracteres (es decir, sustituye a uno, ninguno o muchos caracteres). Para
entenderlo bien, ya que la explicación puede ser un poco confusa, veamos como siempre un
ejemplo simple:
estudiante@debian:~$ cd /dev
estudiante@debian:/dev]$ ls l*
estudiante@debian:~/dev]$
Lo que acabamos de indicarle a ls con el uso de '*' es que nos liste todos los ficheros que
empiecen por 'l' seguido de cualquier cosa, incluso nos lista el contenido de un directorio que
empieza por 'l'. Otro ejemplo, para que nos quede definitivamente claro, puede ser este:
estudiante@debian:~/dev]$ ls *rr*
estudiante@debian:~/dev]$
En este caso lo que hemos hecho es decirle que nos liste todos los ficheros que
contengan la cadena 'rr' (incluso los que empiecen o terminen
Página 21 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
El siguiente y último comodín es '?' que hace referencia a cualquier carácter, pero en este
caso sólo a uno (no puede ser ninguno como el caso de '*'). Para verlo claro veamos un ejemplo
(para variar):
estudiante@debian:~/dev]$ ls ?t??
estudiante@debian:~/dev]$
En este caso le preguntamos a ls por todos aquellos comandos que tienen longitud 4 y
el segundo carácter es una 't', ¿sencillo, verdad?
Puedes combinar tanto '*' como '?' para conseguir el resultado deseado:
Página 22 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
estudiante@debian:~/dev]$ ls ?l*1
aloadC1
estudiante@debian:~/dev]$
Lo que hemos hecho es decirle a 'ls que nos muestre todos aquellos que de segundo
carácter tienen una 'l' seguido de cualquier número de caracteres y acabe en 1. Quizás con 'ls'
no le veáis mucha utilidad a estos comodines, pero imaginaos con cp, rm y mv por ejemplo.
Podéis hacer tantas combinaciones como se os ocurran, así que a probar vosotros mismos.
Consultando información.
Muchas veces necesitamos conocer más acerca de un comando determinado o del uso del
propio intérprete y nos gustaría tener un manual, en el caso de GNU/linux disponemos de un
manual en línea muy útil denominado 'man'. Su sintaxis básica es la siguiente:
Por ejemplo para saber todo de 'cp' no hay mas que consultar 'man cp' nos moveremos
con los cursores arriba o abajo y para salir pulsamos la letra 'q'. La barra espaciadora pasa
página a página y podemos usar Re Pag y Av Pag de nuestro teclado para movernos.
El manual en línea está dividido en secciones, concretamente de la 1 a la 9, cada una
referidas a una cosa distinta. Por ejemplo, la sección 2 es la de programación de C. Por defecto no
pondremos sección y encontraremos lo que buscamos ya que busca en todas, pero en ocasiones
(como por ejemplo cuando se programa) hay funciones que se llaman igual que algún comando
de Linux y por defecto nos dará el comando en vez de la función. En ese caso, por ejemplo, le
especificamos que queremos la sección 2. Para ver por vosotros mismos cómo se usa más a fondo
'man' probad con 'man man'.
Página 23 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
Otra fuente útil de ayuda en línea es sin duda el comando 'info', que tiene un manejo
para visualizar la información igual que 'man'.
du [opciones] [ficheros...]
Este comando contabiliza el espacio que ocupa en disco un fichero o un directorio con todos
sus subdirectorios. Como opciones sólo comentaremos 3 de ellas: la primera '-a' muestra además el
espacio que ocupa cada uno de los ficheros que hay en los directorios que le indiquemos. La
siguiente opción es '-b', que en vez de mostrarnos el tamaño en kB lo mostrará en bytes
(1kB=1024bytes). Y por último la opción '-s', que informa solamente del directorio que le hayamos
indicado sin contar sus subdirectorios.
Página 24 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
estudiante@debian:~/curso]$ cd ..
estudiante@debian:~$ du curso 740
curso
estudiante@debian:~matados2k]$ du -a curso
4 curso/hola_holita
728 curso/perro
0 curso/soy_nuevo
4 curso/nueva_lista
0 curso/lista2
740 curso
estudiante@debian:~$ du -b curso
744412 curso estudiante@debian:~$
du -s curso 740 curso
estudiante@debian:~$
Como observáis en el ejemplo, tanto 'du' a secas como 'du -s' dan el mismo resultado, y
no es ni más ni menos porque el directorio 'curso' no contiene subdirectorios.
su [user]
Este comando lo que hace es convertir tu usuario actual al usuario que le indiques, por
defecto con 'su' a secas lo que haremos es pedir que nos haga 'root'. Esto es de gran utilidad ya que
no es necesario estar haciendo login/logout todo el rato, simplemente hay que darle la password
del usuario al que queremos usar y para volver al anterior simplemente tecleamos exit o pulsamos
Ctrl+D.
Página 25 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
estudiante@debian:~/curso$ su
Password: root@debian:~/curso#
exit exit
estudiante@debian:~/curso$ su triguelch
Password:
[triguelch@debian:/home/estudiante/curso$ su
Password: root@debian:/home/estudiante/curso#
exit exit
[triguelch@debian:home/estudiante/curso$ exit
exit
estudiante@debian:~/curso$
Evidentemente no saldrá nada en pantalla cuando tecleamos los Password, pero sí que los
está recibiendo. También podéis observar cómo puedo cambiar más de una vez seguida sin hacer
exit.
Página 26 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
Página 27 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
Creando un paquete
3.- Si al nombre del fichero le hubiésemos puesto una extensión de un tipo conocido,
File Roller crearía un paquete de ese tipo automáticamente.
Ejemplo, si hubiésemos puesto
'comprimida.tar.gz crearía un paquete tar comprimido con gzip. Los tipos de
paquete que podemos crear se muestran al hacer clic en la lista desplegable de Tipo de
Paquete.
Página 28 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
4.- Tras crear el paquete volveremos a la pantalla principal de File Roller donde, ahora,
tendremos que pulsar sobre el icono Añadir para añadir archivos al paquete y se
abrirá la ventana correspondiente. Podemos seleccionar los archivos que deseemos y,
cuando finalicemos, pulsamos en Añadir.
5.- Volvemos de nuevo a la ventana principal del programa donde veremos los archivos
que forman el paquete. Ya podemos cerrar File Roller, nuestro paquete ha sido creado.
6.- Si ahora vamos a la carpeta donde lo guardamos podremos verlo.
Página 29 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
Abriendo un paquete
Para ver el contenido de un paquete sólo tenemos que hacer doble clic sobre él, con lo cual
File Roller lo abrirá. Si deseamos extraer todos o alguno de los ficheros que componen el paquete
solo debemos seleccionarlo y hacer clic en el botón Extraer de la barra de botones.
Se abrirá la ventana Extraer desde la que podremos especificar dónde queremos guardar los
archivos seleccionados.
Página 30 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
El programa detecta el CD de audio que tenemos en el CD-ROM y nos muestra las pistas.
Aquí seleccionamos las pistas que deseemos extraer
Página 31 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
marcando la casilla correspondiente. También es posible modificar el nombre del disco y del
artista, esto tiene su importancia porque por defecto las pistas se almacenarán en la carpeta
/home/usuario/mp3/nombre_artista/nombre_disco/.
Cuando hayamos completado la información que deseemos seleccionamos la pestaña
Extraer.
En la pestaña Extraer, si seleccionamos Rip Only empezará la extracción de las pistas sin
codificar, en formato wav; si seleccionamos Rip+Encode se extraerán y se codificarán. Por defecto
la codificación se efectúa en formato “ogg”. Un nuevo formato libre mejor que el mp3.
Página 32 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
Cuando hayas terminado con el "ripeo" dirígete a la ventana correspondiente y veras las
pistas extraídas. Si has extraído pistas sin comprimir y comprimidas puedes ver la diferencia de
tamaño viendo los archivos como lista. Ahora escuchálos para ver si notas diferencia.
En el caso de que queramos almacenar la música en nuestro computador, el formato
ideal es Ogg Vorbis. Pero si luego queremos poder utilizar en dispositivos portátiles, es muy
probable que nos veamos obligados a utilizar el formato MP3.
Tanto uno como otro se pueden utilizar desde grip, una vez que hayamos instalado las
herramientas auxiliares que necesita grip, que son en el caso de Ogg Vorbis las vorbis-tools que
incluyen "oggenc" y en el caso de mp3, el codificado mp3enc, bladenc o lame. En nuestro caso
vamos a utilizar "lame".
Página 33 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
Una vez el programa en nuestro equipo abrimos una terminal de root y nos dirigimos al
directorio donde hemos almacenado el paquete (en este caso
Página 34 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
# cd /home/estudiante/Sofware
# ls
La primera de las instrucciones nos dirige al directorio en cuestión y la segunda muestra los
archivo de dicho directorio para comprobar que el archivo está ahí.
Una vez situados en el directorio del paquete procedemos a instalarlo con la instrucción
# dpkg -i ymessenger_1.0.4_1_i386.deb
Ya podemos cerrar el terminal, ya está instalado. Lo único que hay que hacer es configurarlo,
hay que darse de alta en un correo en yahoo.com si queremos usarlo, él solo crea un lanzador en
nuestro escritorio al terminar de configurarlo.
Página 35 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
Una vez descargado (se ha descargado la versión 7 ya que en la 5 no funciona la rueda del
ratón) abrimos el explorador de archivos Nautilus y nos dirigimos al directorio en que se encuentra
el programa. Al hacer doble clic sobre él, se abre el programa File Roller, pues se trata de un
paquete.
Seleccionamos Extraer, creamos una nueva carpeta llamada Acrobat y extraemos el contenido a
dicha carpeta.
Página 36 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
Ahora debemos abrir una terminal de root y situarnos en el directorio en el que hemos
descomprimido el paquete (como en el caso del messenger de yahoo) y ejecutamos el script de
instalación tecleando ./INSTALL (¡¡Cuidado!! en este caso el nombre es con mayúsculas y así hay
que introducirlo (recuerda que Linux diferencia las mayúsculas de las minúsculas en los nombres de
archivos).
En primer lugar debemos aceptar la licencia (pulsa q e irás directamente al final donde
debes escribir accept y pulsar Intro).
Página 37 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
Ya tenemos instalado el programa, pero seguro que aún no tenemos muy claro donde se
encuentra. No importa, vamos a crear un lanzador al programa y en ese proceso veremos dónde
está situado.
Página 38 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
Página 39 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
Página 40 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
línea y que no tuviera efecto usábamos un '#'. Ahora simplemente desmarcamos una línea y listo,
con lo que las fuentes efectivas son las que tenemos en negrita.
Para modificar una línea la seleccionamos y podremos editar su contenido en la parte inferior:
Para eliminarlas simplemente seleccionamos la que queremos y pulsamos sobre 'borrar',
así que si quieres probar puedes pulsar sobre 'Nuevo' para crear una nueva entrada, probar a editarla
y luego borrarla.
Lo primero es saber qué queremos instalar, porque en la pantalla principal aparecen todos
los paquetes disponibles y la verdad, así no hay quien se aclare (imaginaos mi caso con una lista
de 16.302 paquetes entre Debian Sarge y Debian Sid). Lo primero que vamos a hacer es que se
ordenen de alguna forma más lógica.
Para empezar nos fijamos arriba a la izquierda donde pone "Histórico de
Página 41 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
Vemos las posibilidades de ordenación que se nos dan, de las cuales la más interesante a mi
modo de ver es por Secciones y quizás por orden Alfabético, la cosa es que investigues por tu
cuenta. De momento, para la explicación elegiremos Secciones.
Estupendo, así si que da gusto, vemos en la parte izquierda muchas secciones muy ordenadas
por temas, así que vamos a picar por ejemplo en... juegos y entretenimiento (según el
sistema que tengáis tendréis uno u otros, o unos
muy parecidos). Ahora vamos a buscar el frozen-
bubble en la lista superior derecha y lo
seleccionamos (no marcarlo), y vemos que nos
aparece en la parte inferior izquierda la descripción
del paquete, estupendo :) no sólo buscamos
visualmente sino que podemos saber de qué se
trata.
En la columna 'E' podéis ver un cuadradito que nos indica en qué estado están estos paquetes
(instalado, sin instalar ...), los posibles estados los podemos ver en el menú ayuda y son los
siguientes:
Página 42 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
Pues bien, nos lo ponen todo en bandeja. Sabiendo esto sólo tenemos que marcar el
paquete seleccionándolo y pulsando el botón secundario del ratón:
Estupendo, tenemos un todo en 1. Desde aquí, según el estado del paquete, aparecerán
activas las opciones posibles a realizar: desmarcar (si estaba marcada) para no hacer nada, reinstalar
un paquete, actualizarlo, eliminarlo y eliminarlo completamente (acordaros de que los paquetes 'deb'
contenían ficheros de configuración que sólo se eliminaban con la opción -- purge del 'apt-get').
Pues ya está, lo marco para instalar y automáticamente me marcará todas sus
dependencias para instalarse :)
Página 43 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
Ya sabemos cómo realizar todas las órdenes, pero pulsamos y no lo hace sino que 'lo marca',
esto nos da la posibilidad de indicar todo tipo de acciones para luego pulsar en 'Aplicar' y ver cómo
nuestros deseos se hacen realidad:
Página 44 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
'apt-get upgrade' y 'Actualización inteligente' equivale a 'apt-get dist-upgrade'. Luego pulsáis 'Aplicar'
y todo resuelto.
¿Y la caché? ¿Pero qué pasa con la caché?
Pues lo de la caché está más escondido, nos dirigimos al menú 'Configuración', elegimos
'Preferencias' y vamos a la pestaña de 'Ficheros temporales':
Página 45 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
2. Una vez identificados como root entraremos a la aplicación. Como puedes ver, en
este momento, sólo hay un usuario en el sistema, el usuario paco que creamos
durante la instalación de Guadalinex2004. Para añadir un nuevo usuario al sistema
pulsamos sobre Añadir Usuario.
Página 46 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
3. Tendremos que completar una ficha con los datos del usuario, basta con rellenar dos
de ellos, el nombre de usuario (que debe ser corto, sin espacios en blanco ni símbolos
especiales) y la contraseña.
Página 47 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
5. Pero, actualmente, este usuario, en Guadalinex 2004 tendrá problemas para hacer uso del
sistema debido a la política de grupos de los sistemas Linux. No quiero entrar en detalles
demasiado técnicos. Sólo decir que este usuario debe pertenecer a los mismos grupos que
el usuario creado en la instalación para que pueda acceder a los mismos dispositivos
(sonido, cdrom, ...). Por ello vamos a ver a los grupos que pertenece dicho usuario, en este
caso 'paco', para incluir al nuevo usuario, 'teresa', en cada uno de ellos. Para ello pulsamos
sobre Más opciones.
6. Como ves han aparecido muchos nuevos usuarios (entre ellos root), pero son usuarios
que el sistema usa de forma interna, y que a nosotros, ahora, no nos interesan.
Seleccionamos el usuario 'paco' y pulsamos en Propiedades.
Página 48 de 49
Manejo básico de comando en Linux (Debian) La terminal de comandos
7. La ventana contiene tres fichas, nos interesa la tercera, la que hace referencia a Otros
grupos a los que pertenece el usuario
8. Toma buena nota de los grupos que son. Tendremos que dar de alta al nuevo usuario,
teresa, en cada uno de ellos. Para ello volvemos a la ventana principal pulsando en
Cancelar (o Aceptar). Una vez en la ventana principal seleccionamos al nuevo usuario,
teresa, y seleccionamos Propiedades. Nos dirigimos a la pestaña de Otros grupos y
añadimos todos los grupos a los que perteneciá paco seleccionándolos en la ventana de la
izquierda y pulsando sobre el botón Añadir. Cuando hayamos finalizado pulsamos en
Aceptar y en la ventana principal de nuevo en Aceptar.
Apuntes completados de los cursos de Thales, realizados por Rafael Bracho López, Carlos
Luque y Paco España Pérez y entregas de Luis García Galván
Página 49 de 49