Sei sulla pagina 1di 3

LECCION 6.1.

4 Visualizacion (ls)

Listado del contenido de directorios: comando ls

Una de las acciones más habituales a la hora de trabajar es mostrar el contenido de un


directorio, como se ha visto existen herramientas gráficas con este fin, no obstante el shell incluye un
programa con este mismo fin: ls,
ls Muestra los nombres de los ficheros y subdirectorios contenidos en el
directorio en el que se está. Sólo se obtienen los nombres de los ficheros, sin
ninguna otra información.
ls -a Muestra todos los ficheros incluyendo algunos que ordinariamente están
ocultos para el usuario (aquellos que comienzan por un punto). Se recuerda que
el fichero punto . indica el directorio actual y el doble punto .. el directorio
padre, que contiene, al actual.
ls -l Esta es la opción de lista larga: muestra toda la información de cada fichero
incluyendo: protecciones, tamaño y fecha de creación o del último cambio
introducido,...
ls -c Muestra ordenando por día y hora de creación.
ls -t Muestra ordenando por día y hora de modificación. ls -
r Muestra el directorio y lo ordena en orden inverso. ls
subdir Muestra el contenido del subdirectorio subdir.
ls -l filename Muestra toda la información sobre el fichero.
ls --color Muestra el contenido del directorio coloreado.

Las opciones anteriores pueden combinarse. Por ejemplo:

ls -cr Muestra el directorio ordenando inversamente por fechas.

El comando ls admite los caracteres de sustitución o metacarácteres (*) y (?). El carácter *


representa cualquier conjunto o secuencia de caracteres. El carácter ? representa cualquier carácter, pero
sólo uno. Por ejemplo:
ls *.gif Muestra todos los nombres de ficheros que acaben en .gif, por ejemplo
dib1.gif, a.gif, etc.
ls file? Muestra todos los ficheros cuyos nombres empiecen por file y tengan un nombre
de cinco caracteres, por ejemplo: file1, file2, filea, etc.

Tal véz uno de los utilitarios más utilizado en la línea de comandos. Usted encontrará utilizando
esta herramienta sin saber por que lo esta haciendo. Ya que es una de las herramientas más usadas.
Típicamente es usada con un gran números de opciones que varían su comportamiento para arrojarnos más
información sobre los c ontenidos de los directorios. Por ejemplo el comando ls en el directorio actúal no
podrá poveer los siguientes resultados:

$ ls -lF
total 24
drwx------ 25 ivelis admin 850 12 Feb 18:44 Desktop/
drwxr-xr-x 32 ivelis admin 1088 29 Jan 16:00 Documents/
-rwxr-xr-x 18 ivelis admin 612 23 Jan 20:40
Incomplete drwx------ 26 ivelis admin 884 11 Feb
22:06 Library/ drwxr-xr-x 3 ivelis admin 102 4 Nov
18:55 Movies/ drwxr-xr-x 5 ivelis admin 170 12
Nov 14:21 Music/ drwxr-xr-x 3 ivelis admin 102 4
Nov 18:55 Pictures/ drwxr-xr-x 14 ivelis admin
476 23 Jan 20:05 Shared/

La salida de comando ls -lF tiene ocho partes básicas:

• Permisos • Vínculos • Dueños • Grupo • Tamaño de archivo


• Fecha de creación • Nombre de archivo • Tipo de Vínculo

Los permisos serán discutidos más adelante. Los vínculos se refiere al número de entradas en directorios
que contiene una referencia a los archivos; ellas son descriptas en más detalles cuando hablemos del
comando ln. El dueño se refiere al usuario ivelis que es propietario del archivo y el grupo admin que es la
cuenta dueña del archivo. Es posible permitir a un grupo sin miembros ser dueño de un archivo. El Tamaño del
archivo esta representado el bytes y los archivos pueden tener cero bytes. Los directorios son creados con
el comando mkdir y son un múltiple del tamaño de bloque lógico o 1024 bytes. Los nombres que terminan
con una / son directorios.

Al escribir el comando ls modificado por la opción -l (largo) nos revela en la mano izquierda los códigos de
los permisos. El primer caracter de esta columna nos revela el tipo de archivo. El caracter “-” en esta primera
fila indica un archivo de datos regular que contiene flujo de bytes. La d nos indica que es un directorio.

Las próximas 3 columnas de permisos contiene una combinación de caracteres rwx y - donde r significa
permisos de lectura (Read), w significa permisos de escritura (Write) y la x significa permisos de ejecución
(Execute). El guión significa la negación de los permisos rwx.

Como podemos ver de la salida del comando anterior, existen tres conjuntos de columnas de permisos
para un total de nueve columnas, es importante entender que sólo tres de los nueves son importante en
cual- quier momento en particular. El primer conjunto de tres son aplicables al dueño del archivo, en éste
caso es ivelis, y son solamente activo si la cuenta de usuario, ivelis, esta tratando de accesar los archivos. El
segun- do conjunto de permisos se refieren al grupo dueño, o el grupo del dueño, y éste conjunto sólo esta
activo si un miembro del grupo de admin esta tratando de accesar el archivo. El tercer y último conjunto de
permisos se refiere a los otros o a cualquier usuario que no es el el dueño o miembro del grupo que trata de
accesar el archivo.

Los archivos de data no pueden ser ejecutados, pero, el bit de ejecución puede ser establecido para los
archivos sin ningún efecto sobre el éste. Si a un archivo de data se le establece el bit de ejecución y un inten-
to de ejecutarlo es efectuado, entonces el shell lo evaluará y emitirá un mensaje de error indicando que éste
no puede ejecutar el archivo binario. Si un archivo de data ASCII ha sido establecido como ejecutable y un
usuario se encuentra tratando de ejecutarlo, el shell hará un intento de de interpretar el contenido del
archivo como una serie de comandos del shell. Si deseamos algún interprete en particular, entonces el archivo
ASCII deberá empezar con el caracter #! y la ruta del interprete en particular, por ejemplo, la siguiente línea
activa- rá el interprete de Perl para leer el contenido del archivo:

#!/usr/bin/perl

Los directorios son muy parecidos a cualquier otro archivo de datos; aunque ellos no fueron diseñados
para ser archivos ejecutables, ellos pueden tener su bit de ejecución activada. El permiso de ejecución en un
directorio significa que nombres de archivos pueden y no pueden ser visto por el dueño, grupo o los otros.
Esto sólo tiene significado si es para verlo; si el permiso de lectura es valido para la cuenta del usuario, enton-
ces el archivo puede ser leído aunque su nombre no puede ser desplegado con el comando ls. Otra cosa es
también que si los permisos de Lectura o Escritura no están establecidos en un directorio y el dueño, enton-
ces ninguno de los archivos en el directorio pueden ser ni leído o escrito respectivamente.

Existen otros atributos de permisos, como son Set User ID (SUID), Set Group ID (SGID), y el sticky bit, éstas
son discutidas con el comando chmod. Otra opción disponible del comando ls es (-t) que cambia el com-
portamiento de ls a desplegar basada en el tiempo de creación. Combinada con las opciones -lrt:

$ ls -ltr total 24

dr ivelis 18:55
wxr-xr-x dr admin ivelis 02 ov Pictures 18:55
wxr-xr-x dr admin ivelis 02 ov Movies 20:40
wxr-xr-x dr 8 admin ivelis 12 3 an Incomplete
16:00
wxr-xr-x - 2 admin ivelis 088 9 an Documents20:50
rw-r--r-- dr admin ivelis 891 eb fir.rtf 22:06
wx--- --- 6 admin 84 1 eb Library

Vemos que el orden es diferente al anterior ya que cambiamos el comportamiento de ls con la opción (-
t), y nos despliegue basado en la fecha de creación, observe como los meses incrementan.

Potrebbero piacerti anche