Tema II: Comandos bsicos de Linux. Informtica 3 E.S.O.
2 trimestre curso 2005-2006
Tema II: EL SHELL. COMANDOS BSICOS DE LINUX
NDICE:
Introduccin.
Sintaxis de los comandos.
Alias.
irectorios de !inux.
Al"unos comandos sencillos de !inux.
date #fec$a%
cal #calendario%
&$o #usuario%
&$oami #sesin ' terminal%
man #manuales%
clear #lim(iar%
directorio (ersonal
ls #listados%
m)dir #crear directorios%
rmdir #*orrar directorios%
cd #cam*iar de directorio%
(&d #directorio actual%
c( #co(iar directorios%
m+ #mo+er directorios%
rm #*orrar directorios%
file #caracter,sticas de fic$eros%
exit #salir%
-omandos de im(resin
Pgina 1 de 7
Tema II: Comandos bsicos de Linux. Informtica 3 E.S.O. 2 trimestre curso 2005-2006
Cualquier usuario de Linux acabar antes o despus relacionndose con el sistema empleando el
modo texto, no los entornos gr!icos. "ste modo se basa en la e#ecuci$n de una serie de comandos,
que son interpretados por un programa o shell. Linux dispone de %arios de estos programas pero el ms
&abitual es conocido como bash o Bourne Shell. 'i Linux se &a arrancado en modo texto el sistema
arranca de !orma directa el shell queda a la espera de introducci$n de nue%os comandos. 'i se &a
arrancado en modo gr!ico se puede acceder al shell de dos !ormas:
( 'e puede acceder al shell del sistema presionando alguna de las siguientes combinaciones de
teclas )&a que tener en cuenta que en el Linex de las aulas no !uncionan las combinaciones de teclas
&a que entrar e#ecutando el programa gnome*terminal+:
<ctrl>+<alt>+<F1>
<ctrl>+<alt>+<F2>
<ctrl>+<alt>+<F3>
<ctrl>+<alt>+<F4>
<ctrl>+<alt>+<F5>
<ctrl>+<alt>+<F>
"sto &ace que el sistema salga del modo gr!ico acceda a alguna de las seis consolas %irtuales
de Linux, a las cuales tambin se puede acceder cuando se arranca en modo de texto. Para %ol%er al
modo gr!ico &a que presionar alguna de las siguientes combinaciones de teclas )igual que antes, este
procedimiento no !unciona en el Linex de las aulas+:
<ctrl>+<alt>+<F!>
<ctrl>+<alt>+<F",
( La segunda !orma es ms c$moda menos radical permitiendo acceder al s&ell desde el mismo
entorno gr!ico. Para esto &a que abrir un programa llamado terminal o consola, por e#emplo: #console
)en el entorno $%&'( xter)( *no)e+ter)inal )en ,N-.&+, etc.
Introduccin
"xisten una serie de nociones bsicas que &a que tener en cuenta a la &ora de introducir los
comandos. "n primer lugar citaremos las siguientes:
( Los comandos &a que teclearlos exactamente.
( Las letras ma-sculas min-sculas se consideran como di!erentes.
( "n su !orma ms &abitual, el sistema operati%o utili.a un signo de / como 0ro)0t para indicar
que est preparado para aceptar comandos, aunque este carcter puede ser !cilmente sustituido por
otro u otros elegidos por el usuario. "n el caso de que el usuario acceda como administrador este signo
se sustitue por #.
( Cuando sea necesario introducir el nombre de un !ic&ero o directorio como argumento a un
comando, Linu, permite escribir las primeras letras del mismo reali.a un autorrellenado al presionar la
tecla del tabula1or. 'i no puede distinguir entre di%ersos casos rellenar &asta el punto en el que se
di!erencien. Por e#emplo, supongamos una carpeta con los siguientes directorios:
2ro*ra)as
%ocu)entos30ro4ecto
%ocu)entos30ri5a1os
/l escribir c1 2r<tab> Linux rellenar el resto del contenido &asta escribir c1 2ro*ra)a!. Por el
contrario al escribir c1 %<tab> escribir c1 %ocu)entos30r6
Pgina 0 de 7
Tema II: Comandos bsicos de Linux. Informtica 3 E.S.O. 2 trimestre curso 2005-2006
Sintai! de "o! comando!
Los comandos tienen la siguiente sintaxis:
# #ro$rama ar$% ar$& ... ar$n
'e obser%a que, en la 11l2nea de comandos33, se introduce el programa seguido de uno o %arios
argumentos. /s2, el intrprete e#ecutar el programa con las opciones que se &aan escrito.
Cuando se quiere que el comando sea de %arias l2neas, se separa cada l2nea con el carcter barra
in%ertida )4+. /dems, cuando se quiere e#ecutar %arios comandos en la misma l2nea, los separa con
punto coma )5+. Por e#emplo:
6 ma7e modules 5 ma7e modules8install
"n los comandos, tambin se puede [Link] los siguientes comodines:
"l asterisco )9+ es equi%alente a uno o ms caracteres en el nombre de un arc&i%o. "#m: ls ..c
lista todos los arc$i+os con extensin c.
"l signo de interrogaci$n ):+ es equi%alente a un -nico carcter. "#.: ls [Link]/ lista el arc$i+o
[Link] com(letando el 0ltimo carcter.
;n con#unto de caracteres entre corc&etes es equi%alente a cualquier carcter del con#unto. "#.:
ls curso1linux.t2aeiou3x lista [Link] seleccionando la e del con4unto.
A"ia!
;n 11alias33 es un nombre alternati%o para un comando. /s2, en lugar de escribir el comando
propiamente dic&o, escribir2amos el alias de dic&o comando.
;n alias se puede de!inir por %arios moti%os, por e#emplo:
<ar nombres !amiliares a comandos comunes:
alias md=3m7dir3
Crear2a un alias para el comando m7dir, similar al de <>'.
<ar nombres a comandos largos:
alias tb.0=3tar *c% **use*compress*program=b.ip0 *!3
Crear2a un alias para el comando tar para que use el compresor b.ip0 en lugar de [Link].
Para no tener que escribir todos los alias siempre que entremos al sistema, escribiremos dic&o
alias en el arc&i%o ?.bas&8pro!ile
Directorio! en Linu:
@a#o Linux el espacio de arc&i%os que es %isible a los usuarios est basado en una estructura de
rbol, con la ra2. en la parte superior ) ? +. "l directorio ms alto, ?, es conocido como directorio ra2..
'
((((()in
(((((de*
(((((etc
Pgina A de 7
Tema II: Comandos bsicos de Linux. Informtica 3 E.S.O. 2 trimestre curso 2005-2006
(((((+ome
(((((Seccion,%
(((((Seccion,&
((((("i)
(((((u!r
(((((#roc
(((((root
(((((!)in
(((((*ar
Por lo general, la maor parte del sistema operati%o reside en dos sistemas de arc&i%os: el sistema
de arc&i%os ra2., conocido como ', el sistema de arc&i%os montado ba#o 'u!r. "l directorio )in contiene
programas e#ecutables conocidos como binarios. "stos programas son arc&i%os de sistema esenciales.
Buc&os de los comandos como ls, son en realidad programas que se encuentran en este directorio.
"l directorio !)in tambin se utili.a para guardar arc&i%os binarios de sistema. La maor2a de los
arc&i%os de este directorio se usa para prop$sitos de la administraci$n del sistema.
"l directorio etc. contiene muc&os de los arc&i%os de con!iguraci$n del sistema Linux. 'on los
arc&i%os que [Link] Linux. P. e#. el arc&i%o de contraseCas, passDd, se encuentra aqu2.
Las bibliotecas compartidas que emplean los programas cuando se e#ecutan estn guardadas en
el directorio '"i). Bediante el uso de estas bibliotecas compartidas, muc&os programas pueden [Link] el
mismo c$digo, estas bibliotecas se pueden guardar en un lugar com-n, reduciendo el tamaCo de los
programas al momento de su e#ecuci$n.
"l directorio 'de* contiene arc&i%os especiales conocidos como arc&i%os de dispositi%o, los cuales
se usan para tener acceso a todo tipo de &ardDare del sistema. Por e#emplo, el
arc&i%o ?de%?mouse se utili.a para la lectura de entrada del mouse.
'#roc es un sistema de arc&i%os %irtual. 'e usa para leer de la memoria in!ormaci$n de procesos.
"l directorio '+ome es el directorio base para los directorios personales de los usuarios.
"l directorio '*ar guarda los arc&i%os que tienden a cambiar de tamaCo a lo largo del tiempo. Por lo
general, los di%ersos arc&i%os de bitcora de sistema se encuentran ba#o este directorio. "l directorio ?
%ar?spool sus subdirectorios se [Link] para guardar datos que son de manera transiti%a, como el correo
las noticias recin recibidas o puestas en cola para transmisi$n a otro sitio.
"l directorio 'u!r sus subdirectorios contienen algunos de los programas ms importantes del
sistema. Por lo general, los subdirectorios de ?usr contienen los grandes paquetes de so!tDare que se
instalan.
A"$uno! Comando! Senci""o! de LINUX
date Buestra por pantalla el d2a la &ora.
ca" 1747 Buestra el calendario del aCo 1EFE.
cal 85 1747 Buestra el calendario de mao de 1EFE.
Pgina F de 7
Tema II: Comandos bsicos de Linux. Informtica 3 E.S.O. 2 trimestre curso 2005-2006
-+o Indica qu usuarios tiene el ordenador en ese momento, en qu terminal estn desde qu
&ora.
-+oami Indica cul es la terminal la sesi$n en la que se est traba#ando.
man comando: Todos los manuales de Linux estn dentro del propio sistema operati%o, este
comando permite acceder a la in!ormaci$n correspondiente al comando co)an1o. Por e#emplo con )an
9ho aparecer por pantalla de !orma !ormateada por pginas, la explicaci$n del comando 9ho. 'e
puede na%egar a tra%s de estas pginas con los cursores del teclado, presionando . para salir.
man ls: muestra la in!ormaci$n sobre el comando de %[Link]$n de la pantalla.
man dir: muestra la in!ormaci$n sobre el comando que contiene los directorios.
man m7dir: muestra la in!ormaci$n sobre la creaci$n de arc&i%os.
man rmdir: muestra la in!ormaci$n sobre borrar !ic&eros.
man pico: muestra la in!ormaci$n sobre el uso de este editor de texto.
C"ear "ste comando limpia la consola.
Directorio /er!ona". Como se &a %isto anteriormente el directorio personal es un directorio con un
determinado nombre asignado a un usuario. Los directorios personales &abitualmente son subdirectorios
de :ho)e )en algunos casos se utili.a )nt, u otro subdirectorio de orden in!erior+. Generalmente el
nombre coincide con el del no)bre 1e usuario, aunque puede no ser as2, %arios usuarios pueden estar
traba#ando en el mismo directorio. Cada usuario de Linux puede crear una estructura en rbol de
subdirectorios arc&i%os tan comple#a como desee ba#o su directorio personal pero normalmente nunca
!uera de l.
Comando "! 0"i!tado de" contenido de directorio!1: ;na de las acciones ms &abituales a la
&ora de traba#ar es mostrar el contenido de un directorio, para lo cual existen &erramientas gr!icas. Ho
obstante el shell inclue un programa con este mismo !in: ls. ls )uestra los nombres de los !ic&eros
subdirectorios contenidos en el directorio en el que se est. '$lo se obtienen los nombres de los !ic&eros,
sin ninguna otra in!ormaci$n.
ls +a Buestra todos los !ic&eros incluendo algunos que ordinariamente estn ocultos para el
usuario )aquellos que [Link] por un punto+. 'e recuerda que el !ic&ero punto . indica el directorio
actual el doble punto .. el directorio padre, que contiene, al actual.
ls +l "sta es la opci$n de lista larga: muestra toda la in!ormaci$n de cada !ic&ero incluendo:
protecciones, tamaCo !ec&a de creaci$n o del -ltimo cambio introducido,...
ls +c Buestra ordenando por d2a &ora de creaci$n.
ls +t Buestra ordenando por d2a &ora de modi!icaci$n.
ls +r Buestra el directorio lo ordena en orden in%erso.
ls sub1ir Buestra el contenido del subdirectorio indicado como sub1ir.
Las opciones anteriores pueden combinarse. Por e#emplo:
ls +cr Buestra el directorio ordenando in%ersamente por !ec&as.
"l comando ls admite los caracteres de sustituci$n o metacarcteres ;9+ ;:+. "l carcter <
representa cualquier con#unto o secuencia de caracteres. "l carcter = Iepresenta cualquier carcter,
pero s$lo uno. Por e#emplo:
Pgina J de 7
Tema II: Comandos bsicos de Linux. Informtica 3 E.S.O. 2 trimestre curso 2005-2006
ls <6*i> Buestra todos los nombres de !ic&eros que acaben en 6*i!, por e#emplo 1ib16*i>(
a6*i!, etc..
ls >ile= Buestra todos los !ic&eros cuos nombres empiecen por >ile tengan un nombre de cinco
caracteres, por e#emplo: >ile1( >ile2( >ilea, etc.
Comando m2dir 0Creacin de !u)directorio!1: este comando ;)a#e 1irector+ permite a cada
usuario crear un nue%o subdirectorio, se emplea de la siguiente !orma:
)#1ir sub1ir( donde sub1ir es el nombre del directorio que se %a a crear.
Comando rmdir 0Borrado de !u)directorio!1: este comando borra uno o ms directorios del
sistema ;re)o5e 1irector+, siempre que estos subdirectorios estn *ac3os. Por e#emplo:
r)1ir sub1ir( donde sub1ir es el nombre del directorio que se %a a eliminar.
Comando cd: 0Cam)io de directorio1: este comando permite cambiar de directorio a partir del
directorio actual de traba#o. Por e#emplo, c1 :ho)e:2e1ro "n este e#emplo pasamos del directorio actual
de traba#o al nue%o directorio :ho)e:2e1ro, que ser desde a&ora nuestro nue%o directorio.
c1 1irector4 Hos traslada al subdirectorio 1irector4 )que deber existir como subdirectorio en el
directorio actual+.
c1 66 Ietrocedemos un ni%el en la #erarqu2a de directorios. Por e#emplo, si estamos en :
ho)e:2e1ro usamos este comando, pasaremos al escala!$n inmediatamente superior de la #erarqu2a
de directorios, en este caso a :ho)e. Nota: al contrario que en .S+%-S en Linux no existe la !orma cd..
sin espacio entre cd los dos puntos.
c1 Hos sit-a nue%amente en el directorio personal del usuario.
Comando #-d 0Situacin actua"1: el comando 091 ;0rint 9or#in* 1irector+ %isuali.a o
imprime la ruta del directorio en el que nos encontramos en este momento. "ste comando es uno de los
pocos que no tiene opciones se utili.a escribiendo simplemente 091.
Comando c# 0Co#ia de 4ic+ero!1: este comando tiene la siguiente !orma:
c0 >ile1 >ile2 &ace una copia de >ile1 le llama >ile2. 'i >ile2 no exist2a, lo crea con los mismos
atributos de >ile1. 'i >ile2 exist2a antes, su contenido queda destruido es sustituido por el de >ile1. "l
!ic&ero >ile2 estar en el mismo directorio que >ile1. Tanto >ile1 como >ile2 indican el nombre de un
arc&i%o, que puede incluir la ruta al mismo si alguno de ellos no se encuentra en el directorio actual. >tra
posibilidad es:
c0 >ile1 >ile2 na)e1ir que &ace copias de >ile1 >ile2 en el directorio na)e1ir.
cp *i: pregunta si deseas sobreescribir !ic&eros.
Comando m* 0Tra!"ado 5 cam)io de nom)re de 4ic+ero!1: este comando tiene una !orma
similar al anterior, )5 >ile1 >ile26
"l comando )5 reali.a la misma !unci$n que el anterior ;cp+ pero adems destrue el !ic&ero
original. "n de!initi%a traslada el contenido de >ile1 a >ile05 a e!ectos del usuario lo que &a &ec&o es
cambiar el nombre a >ile1, llamndole >ile0.
<e igual !orma, )5 >ile1 >ile2 na)e1ir traslada uno o ms !ic&eros ;>ile1, >ile0,...+ al directorio
na)e1ir conser%ndoles el nombre. "l comando, )5 na)e1ir1 na)e1ir2 cambia el nombre del
Pgina K de 7
Tema II: Comandos bsicos de Linux. Informtica 3 E.S.O. 2 trimestre curso 2005-2006
subdirectorio na)e1ir1 por na)e1ir2.
m% *i: con esta %ariaci$n al mo%er o renombrar alg-n !ic&ero el comando pide una con!irmaci$n si
a &a un !ic&ero destino.
La que recalcar que el comando )5 sir%e as2 mismo para cambiar el nombre de los !ic&eros.
Comando rm 0Borrado de 4ic+ero!1: este comando tiene la !orma siguiente:
r) >ile1 >ile26
"ste comando elimina uno o ms !ic&eros de un directorio en el cual tengamos permiso de
escritura. Con este comando resulta !acil2simo borrar !ic&eros in-tiles, desgraciadamente, tambin los
-tiles. Por eso es con%eniente casi imprescindible emplear lo opci$n +i, de la !orma siguiente:
r) +i >ile1 >ile2
Con esta opci$n, Linux pedir con!irmaci$n para borrar cada !ic&ero de la lista, sobre si realmente
se desea su destrucci$n o no. 'e recomienda usar siempre este comando con esta opci$n para e%itar el
borrado de !ic&eros -tiles. Por e#emplo, si se teclea, r) +i su0er>luo aparecer en pantalla el a%iso
siguiente:
re)o5e su0er>luo= &abr que contestar 4 )es ?s2+ o n )not ? no+.
"n este comando se pueden [Link] los caracteres de sustituci$n ;< :+, como por e#emplo, r)
>ich< que borrar2a todos los !ic&eros del directorio actual que comiencen por >ic&.
"l comando r) < borrar todos los !ic&eros del directorio actual, mientras que r) +i < reali.a una
labor anloga, pero con pre%ia con!irmaci$n.
rm *i: pide la con!irmaci$n de borrado.
rm *r: borra los rboles ? estructura de directorios.
Comando 4i"e 0Caracter3!tica! de un 4ic+ero1: este comando reali.a una serie de
comprobaciones en un !ic&ero para tratar de clasi!icarlo. 'u !ormato es: >ile >ich6 Tras su e#ecuci$n este
comando muestra el tipo del !ic&ero e in!ormaci$n al respecto del mismo.
Eit: Termina la sesi$n de Linux en una terminal
Comando! de im#re!in.
Comando "#r
"l comando l0r se emplea para imprimir una serie de !ic&eros. 'i se emplea sin argumentos
imprime el texto que se [Link] a continuaci$n en la impresora por de!ecto. Por el contrario,
l0r no)bre3>ichero imprime en la impresora por de!ecto el !ic&ero indicado.
Pgina 7 de 7