Los comandos del AmigaDOS (II)
Por Francisco Javier Rodríguez
Bajo el WorkBench, probablemente el sistema más utilizado por la comunidad de usuarios, se esconde el "verdadero" sistema operativo AmigaDOS. |
|
Seguramente más de una vez habrá querido conocer el tamaño de algún fichero en concreto, además de querer saber el estado en el que se encuentran los diferentes flags de protección, como puede ser contra escritura, lectura o borrado del mismo. Esto, sin embargo, no nos lo ofrece el comando DIR, pero el sistema operativo ha dispuesto otro comando a nuestro servicio con el cual si podremos conocer dicha información: LIST.
LIST es un comando similar a la opción INFO del menú WorkBench, con la diferencia de que además obtendremos la información correspondiente a la fecha y hora en la que se creó el fichero. Su sintaxis desde el CLI o SHELL es como sigue:
1.Workbench:>LIST
A continuación, suponiendo que nos encontremos en el directorio 'C', saldrá impreso en nuestra pantalla lo siguiente:
Run 2568 --p-rwed Future 06:15:05
Fault 2688 --p-rwed Future 06:15:07
Install 2436 --p-rwed Future 06:15:08
Stack 872 --p-rwed Future 06:15:09
Prompt 584 --p-rwed Future 06:15:10
Else 860 --p-rwed Future 06:15:11
Status 1772 --p-rwed Future 06:15:13
Ed 19564 --p-rwed Future 06:15:15
Binddrivers 2920 ----rwed Future 06:15:16
Mount 5432 --p-rwed Future 06:15:17
Search 6916 --p-rwed Future 05:59:58
Delete 6124 --p-rwed Future 06:15:18
Ask 648 --p-rwed Future 06:00:00
Edit 18164 --p-rwed Future 06:00:02
Avail 1964 --p-rwed Future 06:00:03
Type 2284 --p-rwed Future 06:15:19
AddBuffers 876 --p-rwed Future 06:15:20
SetPatch 3844 ----rwed Future 06:15:21
Path 2136 --p-rwed Future 06:15:22
Break 956 --p-rwed Future 06:15:23
Relabel 872 --p-rwed Future 06:00:08
. . . . .
. . . . .
. . . . .
75 files - 775 blocks used
como pueden observar, en el formato de salida, la primera columna se refiere al nombre de los ficheros, en la segunda se encuentra la longitud de los mismos (en bytes) seguida por los flags de protección y la fecha, así como la hora, de creación de los ficheros. Al final del listado se encuentra un par de datos más: el total de ficheros encontrados en dicho directorio y el número de bloques que utilizan el total todos los ficheros.
Aunque en esta ocasión hemos empleado este comando desde el directorio sobre el cual deseamos obtener la información, también son válidas las mismas que se emplearon con el comando DIR (visto el mes pasado); es decir:
1.WorkBench:>LIST c
ó
1.WorkBench:>LIST DF0:c
También son sintaxis válidas que se pueden aplicar a este comando.
¿Recuerdan el parámetro '?', con el cual se pedía información a un comando sobre sus funciones?. Pues bien, en esta ocasión también utilizaremos el mismo para saber todo lo que se puede realizar con el comando LIST; sin lugar a dudas mucho más potente que la información ofrecida por el WorkBench. Teclee lo siguiente:
1.WorkBench.> List ?
En la pantalla de su monitor aparecerá lo siguiente:
DIR,P=PAT/K,KEYS/S,DATES/S,NODATES/S,TO/K,SUB/K,SINCE/K,UPTO/K,QUICK/S,
BLOCK/S,NOHEAD/S,FILES/S,DIRS/S,LFORMAT/K
Las opciones de LIST
¿Qué es lo que puede hacer con todas estas opciones?. Bien, iremos viendo las posibilidades una por una. La primera de ellas (KEYS/S) tiene como función mostrar, además de las características vistas con anterioridad, el bloque del directorio en el cual se encuentra asignado el comienzo del fichero. Por ejemplo, el listado visto al comienzo del artículo tendrá el siguiente aspecto bajo la opción KEYS/S (correspondiente a mi disco duro.):
1.Workbench:C>LIST keys
Rename [ 833] 632 --p-rwed Friday 14:20:50
Dir [ 835] 8772 --p-rwed Friday 14:20:50
NewCLI [ 837] 2788 --p-rwed Friday 14:20:51
NewShell [ 839] 2752 --p-rwed Friday 14:20:51
Quit [ 841] 1036 --p-rwed Friday 14:20:52
Why [ 843] 576 --p-rwed Friday 14:20:52
Echo [ 845] 992 --p-rwed Friday 14:20:52
Lab [ 847] 40 --p-rwed Friday 14:20:53
DiskChange [ 849] 680 --p-rwed Friday 14:20:53
GetEnv [ 851] 916 --p-rwed Friday 14:20:53
Skip [ 853] 1204 --p-rwed Friday 14:20:54
DiskDoctor [ 855] 6892 --p-rwed Friday 14:20:54
Failat [ 857] 1028 --p-rwed Friday 14:20:54
SetEnv [ 859] 836 --p-rwed Friday 14:20:55
Sort [ 861] 1868 --p-rwed Friday 14:20:55
. . . . . .
. . . . . .
. . . . . .
64 files - 469 block used
En esta ocasión los números contenidos entre los corchetes se corresponden con el bloque de comienzo del fichero en el directorio, seguido por el tamaño de los mismos en bytes y las demás características ya vistas anteriormente.
Seguramente pensará que la columna que se corresponde a la fecha del fichero no ayuda mucho a determinar la verdadera fecha de creación del mismo; pruebe con la instrucción LIST acompañada de la opción DATES:
1.Workbench:c>List dates
En la pantalla de su ordenador se listarán los ficheros bajo la siguiente sintaxis:
Rename 832 --p-rwed 31-Aug-79 14:20:50
Dir 8772 --p-rwed 31-Aug-79 14:20:50
NewCLI 2788 --p-rwed 31-Aug-79 14:20:51
NewShell 2752 --p-rwed 31-Aug-79 14:20:51
. . . . .
. . . . .
. . . . .
64 files - 469 blocks used
En esta ocasión podemos ver la fecha exacta correspondiente a la creación de los ficheros - correspondientes al directorio C del disco WorkBench -. Sin embargo, suponiendo que no le interese en absoluto la información correspondiente a la fecha de creación, podrá utilizar la opción NODATES; con lo cual la columna correspondiente a las fechas de creación de los ficheros no se visualizará al realizar el listado.
A continuación nos encontramos con una de las opciones especialmente más interesantes, puesto que nos permite redireccionar el listado a un fichero o cualquier otro dispositivo como puede ser una impresora. La opción que nos permitirá realizar esta tarea es 'TO', siendo la sintaxis correcta la siguiente:
1.WorkBench:c>List to ram:listado
Creará el fichero 'listado' en el directorio RAM:, conteniendo los ficheros en el listado del directorio C. Por otro lado
1.WorkBench:c>List to prt:
Listará el contenido del directorio C directamente por impresora, en vez de sacar el mismo por la ventana SHELL (dispositivo de salida por defecto).
Otra de las funciones de mayor ayuda es 'SUB' con la cual se listarán los ficheros que contegan en su nombre el carácter o cadena especificada. Por ejemplo mediante la siguiente sintaxis:
1.WorkBench:c>List SUB a
Se listarán todos los ficheros cuyo nombre contenga el carácter 'a'; mientras que con
1.WorkBench:c>List SUB env
Se listarán todos los nombres que contengan en su nombre la cadena 'env'. En esta ocasión se listarían 'GetEnv' y 'SetEnv'.
A continuación se encuentran un par de opciones con las cuales también se limita el listado al grupo de ficheros que contengan unas características determinadas. En esta ocasión en vez de limitar el mismo mediante el nombre, se limitará mediante la fecha de creación de los mismos; para ello se dispone de dos opciones: SINCE y UPTO.
Mediante la opción SINCE, se limitará el listado de los ficheros a aquellos cuya fecha de creación sea la indicada en la opción; mientras que con UPTO se listarán todos los ficheros cuya fecha de creación sea anterior o igual a la indicada por la opción. Pero, ¿en qué formato ha de proporcionarse la fecha para la opción?. Existen dos formas de hacerlo, la primera es empleando la sintaxis 'DD-MMM-AA', donde DD debe sustituirse por dos dígitos que indicarán el día, MMM deben ser sustituidos por la abreviación en tres letras correspondiente al mes (en inglés) y AA debe sustituirse por dos dígitos correspondientes a la terminación del año. Por ejemplo sería correcta la forma 28-Aug-92, mientras que 28-Agosto-1992 no sería correcto.
La segunda forma de indicar la fecha es más general, puesto que para ello se utiliza la forma 'Future' (futuro), 'Today' (actual), 'Yesterday' (pasado) o los días de la semana (en inglés), como parámetros en las opciones UPTO y SINCE.
Por ejemplo:
1.WorkBench:c>List since 31-Aug-79
1.WorkBench:c>List since future
1.WorkBench:c>List since friday
Serán válidas para listar los ficheros cuya fecha se corresponda con el 31 de Agosto de 1979, el futuro o el miércoles respectivamente; la segunda fórmula en comparación con la fecha actual del sistema.
Si sustituimos la opción SINCE por UPTO, manteniendo las expresiones que indican la fecha, se cambiará por completo el sentido de la instrucción, ya que
1.WorkBench:c>List UPTO 31-Aug-79
1.WorkBench:c>List UPTO future
1.WorkBench:c>List UPTO friday
Listará todos los ficheros cuya fecha se anterior o igual a la expuesta en cada una de las fórmulas, abarcando un número mayor de ficheros.
La opción Quick, por otra parte, listará todos los ficheros contenidos en el directorio indicado sólo por el nombre; es decir, no aparecerán las demás características. El resultado es similar al obtenido mediante el comando DIR:
1.WorkBench:c>List Quick
Rename
Dir
NewCLI
NewShell
.
.
.
64 files - 469 blocks used
La siguiente opción (BLOCK) tiene como misión listar el tamaño de los ficheros no mediante bytes, sino mediante su equivalente en número de bloques (1 bloque = 512 bytes).
La siguiente opción, ofrecida por el comando LIST, no tiene una gran importancia, puesto que lo único que hace es eliminar la cabecera en el listado, quedando solamente los nombres de los ficheros.
Las dos opciones siguientes son FILES y DIRS, equivalentes a las que se encuentran en el comando DIR; es decir, su misión es listar sólo ficheros (FILES) o directorios (DIRS). Sin embargo la opción más interesante que encierra este comando es LFORMAT, a la cual podrá sacar un muy buen partido.
En su formato más sencillo esta opción tiene como función listar el contenido de un directorio bajo un formato determinado. Por ejemplo mediante la sintaxis:
1. WorkBench:c>List LFORMAT Este_es_un_comando______%s
Se producirá el siguiente listado en pantalla:
Este_es_un_comando_____Rename
Este_es_un_comando_____Dir
Este_es_un_comando_____NewCLI
Este_es_un_comando_____NewShell
Este_es_un_comando_____Quit
Este_es_un_comando_____Why
Este_es_un_comando_____Echo
Aunque también es posible la creación automática de determinados Scripts, para realizar tareas como por ejemplo renombrar ficheros, etc. Sin embargo, debido a que existen otros comandos específicos encargados de realizar esta tarea, omitiremos su explicación.
Cuando se utiliza la opción LFORMAT, las opciones QUICK y NOHEAD son invocadas por el sistema de forma directa, con lo cual sólo se listan los nombres de los ficheros.
Por último decir que las diferentes opciones pertenecientes al comando LIST pueden ser combinadas en una misma instrucción; de esta forma mediante la sintaxis:
1.WorkBench:c>LIST BLOCK DATES KEYS TO RAM:prueba
Creará un fichero en el disco RAM: de nombre 'prueba' conteniendo el listado de los ficheros, con la fecha real de creación de los mismos, el tamaño en bloques y el bloque inicial de presencia en le directorio (KEY). |