You are on page 1of 4

Intérprete de comandos de la shell

Porqué utilizar un intérprete de comandos de la shell


Taller de Computación e Informática Básica

• Los entornos gráficos para Linux han evolucionado mucho en los

Linux últimos años. Se puede trabajar utilizando el sistema X Windows y


solamente tener que abrir el intérprete de comandos para completar
unas pocas tareas.
• Sin embargo es recomendable aprender como trabajar desde el
intérprete de comandos de la shell, porque usar los comandos
mediante el intérprete de comandos de la shell puede ser muy
Intérprete de comandos de la rápido que el entorno gráfico (GUI). En el tiempo puede tardar en
shell abrir el gestor de ficheros en GNOME ó KDE, buscar el directorio,
crear o modificar ficheros, utilizando la shell, podría haber acabado

1 con varios comandos desde la shell.

Ing. Jesús Bernardo Olavarria Paz

Ing. Jesús Bernardo Olavarria Paz

Intérprete de comandos de la shell Intérprete de comandos de la shell


Porqué utilizar un intérprete de comandos de la shell Historia de la shell
(continúa)

• Un intérprete de comandos se parece a una pantalla MS-DOS. Los • En los tiempos en los que Dennis Ritchie y Ken Thompson de AT&T
TM
usuarios escriben comandos en un intérprete de comandos, la shell diseñaban UNIX , quisieron crear un medio para que las personas
los interpreta y después le dice al sistema operativo lo que tiene que interactuaran con el sistema.
hacer. Los usuarios experimentados pueden escribir scripts de la • Los sistemas de entonces venían con intérpretes de comandos, que
shell para aumentar sus capacidades. aceptaban comandos de los usuarios y los interpretaban para que
los utilizara la máquina.
• Pero Ritchie y Thompson querían más, algo que ofreciera más que
los intérpretes de comandos del momento. Así nació la Bourne shell
(conocida como sh), creada por S.R. Bourne. Desde la creación de
la shell de Bourne se han desarrollado otras shells, tales como la C
shell (csh) y la Korn shell (ksh).

Ing. Jesús Bernardo Olavarria Paz Ing. Jesús Bernardo Olavarria Paz

Intérprete de comandos de la shell


Intérprete de comandos de la shell

Historia de la shell (continúa) Comando: cd (Change directory)

• Cuando la Free Software Foundation buscaba una shell sin • Cambia el directorio actual de trabajo.
patentes, los desarrolladores empezaron a trabajar en el lenguaje
de la Bourne shell y en características de otras shells del momento. Comando Función
cd vuelve a su directorio de login
• El resultado fué la Bourne Again Shell o bash. Aunque su sistema
cd ~ vuelve también a su directorio de login
Red Hat Linux tenga diferentes shells, bash es la shell
cd / le lleva al directorio raíz del sistema completo
predeterminada. Se puede aprender algo más sobre bash leyendo
cd /root le lleva al directorio principal del root, o superusuario, cuenta creada en la
su página man bash (escriba man bash en el intérprete de instalación; debe ser el usuario root para accesar este directorio.
comandos). cd /home lo lleva a su directorio principal, donde los directorios login de usuario son
almacenados
cd .. le traslada a un directorio superior
cd ~otheruser le lleva al directorio login del usuario otheruser, si otheruser le ha dado
permiso
cd /dir1/subdirfoo sin tener en cuenta en que directorio est·, este recorrido absoluto le llevará
directamente a subdirfoo, un subdirectorio de dir1
cd ../../dir3/dir2 este recorrido relativo lo llevará dos directorios más arriba, luego a dir3,
luego al directorio dir2.

Ing. Jesús Bernardo Olavarria Paz Ing. Jesús Bernardo Olavarria Paz
Intérprete de comandos de la shell
Intérprete de comandos de la shell
Comando: pwd (Path to working directory) Comando: ls (List)

Muestra el nombre y ruta de acceso del directorio de trabajo actual. • Muestra una lista de archivos en el directorio actual.
• Para determinar la ubicación exacta de su directorio actual, vaya a un Comando Función
intérprete de comandos de la shell y escriba el siguiente comando: pwd.
ls -l Proporciona información más detallada, incluyendo el tamaño de los
– Verá algo como lo siguiente: archivos, las modalidades de acceso y protección, tamaños, fechas de
creación.
/home/sam
ls -F Muestra indicando los tipos de contenido: directorio (se identifican con /),
• Este ejemplo le indica que está en el directorio sam, que está dentro de su archivos ejecutables (se identifican con *), y enlaces (se identifican con
escritorio principal /home. @). <archi> puede ser un nombre de archivo o una expresión con
caracteres de sustitución.
• El comando pwd viene de 'print working directory', (mostrar el directorio
ls -a Muestra también los archivos de nombres comenzando con punto
actual). Cuando usted escribe pwd, le est· preguntando a su sistema Linux generalmente archivos de configuración. (No los modifique sin enterarse
que le muestre su ubicación actual. Su sistema le responde imprimiendo la de su significado).
ruta completa del directorio actual en el intérprete de comandos, en el ls -r Inverso (en inglés “reverse”). Lista los contenidos del directorio desde el
monitor. Esta impresión también se conoce como salida estándar de datos final hasta el inicio.
y se puede imprimir al shell o redirigirse a otros programas o a otros ls -R Recursive. La opción recursive lista los contenidos de todos los
dispositivos de salida, tales como impresoras. directorios (bajo el directorio actual).
ls -S Tamaño (en inglés “size”). Clasifica los archivos por su tamaño.
• Usar· pwd a menudo. Es muy útil cuando está navegando su sistema Red
Hat Linux. ls -Fa Muestra con tipos de archivos incluyendo los archivos con punto inicial.
ls -al Listado con atributos y archivos ocultos

Ing. Jesús Bernardo Olavarria Paz Ing. Jesús Bernardo Olavarria Paz

Intérprete de comandos de la shell Intérprete de comandos de la shell

Comando: touch Comando: vi (Visual Editor)

• Crea o actualiza archivo. • Llama al editor visual, para trabajar con el archivo de texto arch.

touch <archivo> vi <archivo>

Ejemplo: Ejemplo:
[root@server root]# touch /tmp/prueba.txt [root@server root]# vi /tmp/prueba.txt

Ing. Jesús Bernardo Olavarria Paz Ing. Jesús Bernardo Olavarria Paz

Intérprete de comandos de la shell Intérprete de comandos de la shell

Comando: cat Comando: cat (continúa)

• Red Hat Linux posee una utilidad que le puede ayudar a guardar listas • Para redirigir la salida cat a un archivo, escriba lo siguiente en el
cortas, agruparlas juntas y hasta mostrarle información sobre su sistema. intérprete de comandos (si presiona la tecla [Intro] lo llevará a la
• Esta utilidad se llama cat, diminutivo de concatenate, que signica combinar siguiente línea en blanco):
o concatenar archivos.
cat > prueba.txt
• El comando cat visualizar· también los contenidos de un archivo entero en
la pantalla (por ejemplo, teclee cat filename.txt). Si un archivo es bastante
largo, se deplaza rápidamente y por completo por la pantalla. Para evitar Ejemplo:
esto, use el comando cat filename.txt | less. [root@server root]# cat prueba.txt
• El uso de tuberias (|) y del comando less juntos, le permite visualizar el [root@server root]# cat > prueba.txt
archivo página a página.

Ing. Jesús Bernardo Olavarria Paz Ing. Jesús Bernardo Olavarria Paz
Intérprete de comandos de la shell Intérprete de comandos de la shell

Tuberías y paginadores Comando: more

• En el mundo linux, las tuberias (también conocidas como pipes) relacionan • La diferencia principal entre more y less es que less le permite ir
la salida estándar de un comando con la entrada estándar de otro
comando. hacia delante y hacia atrás en un archivo usando las flechas
direccionales, mientras que more realiza la navegación usando la
[root@server root]# ls –al /etc | less [Barra espaciadora].

• De esta manera verá el contenido de /etc en una pantalla a la vez. Para


acceder a la pantalla siguiente, pulse [Barra espaciadora]; para volver a la Ejemplo:
pantalla anterior, pulse [B]; para salir, presione [Q]. También puede usar las
flechas direccionales para navegar con less. Para buscar palabras dentro
de un archivo de texto usando less, presione [/] y luego escriba la palabra [root@server root]# ls –al /etc/ | more
que quiere buscar. Por ejemplo:

# /Linux

Ing. Jesús Bernardo Olavarria Paz Ing. Jesús Bernardo Olavarria Paz

Intérprete de comandos de la shell Intérprete de comandos de la shell

Entubar las salidas de ls a more Comando: grep

• Para buscar ciertas palabras dentro de un archivo de texto usando • El comando grep es útil para encontrar una cadena de caracteres
more, presione [/] y luego escriba la palabra que desea encontrar en específicas en un archivo. Por ejemplo, si quiere encontrar cada
el archivo. referencia que se haya hecho a “java” en el archivo taller.txt,
debería escribir.
Ejemplo:
Ejemplo
# /samba [root@server root]# grep java taller.txt

Ing. Jesús Bernardo Olavarria Paz Ing. Jesús Bernardo Olavarria Paz

Intérprete de comandos de la shell Intérprete de comandos de la shell

Comando: find Comodines y expresiones regulares

• Busca los archivos que satisfacen la condición señalada a partir del • Mediante el uso de caracteres de sustitución o expresiones regulares,
directorio indicado. puede ejecutar acciones en un archivo o archivo sin saber el nombre de
archivo completo. Rellene lo que sabe y sustituya lo restante con un
comodín.
find <directorio><condicion> • Los comodines son símbolos especiales que puede usar para sustituir
letras, números y símbolos lo que permite encontrar directorios y archivo
Ejemplo más fácil que leer listados largos para encontrar lo que está buscando.
[root@server root]# find /etc/ –name samba -print
Ejemplo: Sabemos que se llama “tal__.txt” teclee:
[root@server root]# ls tal*.txt
[root@server root]# ls *.txt
[root@server root]# ls ta*

Ing. Jesús Bernardo Olavarria Paz Ing. Jesús Bernardo Olavarria Paz
Intérprete de comandos de la shell Intérprete de comandos de la shell

Comodines y expresiones regulares Comando: ln

• Cuando un asterisco forma parte de un nombre de archivo, como puede ser • crea un enlace simbólico de link hacia file.
el caso del archivo taller.txt si se llamara talle*txt es el momento de usar
expresiones regulares.
• Utilizando el símbolo (\), puede especificar que no desea buscar todo ln -s file link
mediante el uso de asterisco, sino que desea buscar un archivo con un
asterisco en el nombre. Ejemplo:
• Si el archivo se llama talle*.txt, escriba:

[root@server root]# talle\*.txt [root@server root]# ln –s /usr/local/share acceso

• Lista de comodines y expresiones regulares:

– * __ Hace coincidir todos los caracteres


– ? __ Hace coincidir un carácter en una cadena
– \* __ Hace coincidir el carácter *
– \? __ Hace coincidir el carácter ?
– \) __ Hace coincidir el carácter )

Ing. Jesús Bernardo Olavarria Paz Ing. Jesús Bernardo Olavarria Paz

You might also like