Lo que Vd. siempre quiso saber sobre VMS y no se atrev´ıa a

Anuncio
Lo que Vd. siempre quiso saber sobre VMS
y no se atrevı́a a preguntar
Para empezar, un comentario muy simple: los comandos y sentencias de VMS y de FORTRAN se pueden
escribir indistintamente en minúscula o en mayúsculas. A continuación se denominan en letras mayúsculas
los comandos de VMS, FORTRAN y las extensiones de los archivos (por ejemplo, HELP o nombre.TXT) y en
minúsculas el resto del texto.
Generalidades
Entrar en la Cuenta de Usuario (o “Login”)
Username: A_C2xxx
Password: ***********
Salir de la Cuenta (o “Logout”)
ZEUS_$ LOGOUT
ZEUS_$ LO
(forma abreviada)
Cambiar el “Password” de la Cuenta
ZEUS_$ SET PASSWORD
Ayuda sobre comandos de VMS
ZEUS_$ HELP
Para ver la Cuota en Disco Disponible en la cuenta (1 bloque=512 bytes)
ZEUS_$ SHOW QUOTA
ZEUS_$ SH QUO (forma abreviada)
Estructura General de un Archivo en VMS: nombre.EXT;V
EXT es la Extensión del archivo. Por ejemplo:
.FOR : archivo fuente en FORTRAN
.OBJ : archivo compilado
.EXE : archivo ejecutable
.TXT : archivo de texto
.DAT : archivo de datos
.RES : archivo de resultados
.COM : programa de comandos
.DIR : directorio
V es el número de versión del archivo
Sobre Directorios
Directorio principal de cada usuario: DISK$ALU:[A C2xx]
Para ver en qué directorio se está:
ZEUS_$ SHOW DEFAULT
ZEUS_$ SH DEF (forma abreviada)
Para ver lo que hay en un directorio:
ZEUS_$ DIR
(da la lista de ficheros del directorio)
ZEUS_$ DIR/SIZE/DAT (da la lista con el tama~
no y fecha de creación)
Para Crear un Directorio
ZEUS_$ CREATE/DIR [.nombre]
Para Moverse a un Directorio Ya Creado (usando el nombre completo del directorio)
ZEUS_$ SET DEF DISK$ALU:[A_C2xx.nombre]
Para Moverse a un Directorio Ya Creado (si se encuentra en un nivel siguiente al actual)
ZEUS_$ SET DEF [.nombre]
Para Moverse a un Directorio del Nivel Anterior en el Árbol de Directorios
ZEUS_$ SET DEF [-]
En caso de perderse en los directorios de la cuenta: volver al directorio principal
ZEUS_$ SET DEF DISK$ALU:[A_C2xx]
Para borrar un directorio
Mejor no hacerlo, pero si Vd. quiere eliminar un directorio se lo contaremos a continuación.
Sobre Archivos
Para ver las Protecciones de los Archivos de un Directorio
ZEUS_$ DIR/PROT
Y la respuesta será por ejemplo:
Directory DISK$ALU:[A_C2xx]
EJEMPLO.FOR;1
(RWE,RWED,RWE,)
PRUEBAS.DIR;1
(RWED,RWED,,)
Total of 2 files.
(RWE,RWED,RWE,) hace referencia a las autorizaciones permitidas a 4 tipos genéricos de usuarios y que se
encuentran separadas por comas: (Sistema,Usuario,Grupo,Red). Las letras RWED indica lo que se permite hacer
a cada tipo de usuario, a saber: R (Read) Leer, W (Write) Escribir (es decir modificar el archivo),E (Execute)
Ejecutar y D (Delete) Borrar.
Para cambiar las Protecciones de un Archivo
ZEUS_$ SET PROT=(S:RWED,O:RWED,G,W) nombre.TXT
En este caso se asignan al archivo “nombre.TXT” las autorizaciones siguientes: el Responsable del Sistema
(S de “system”) puede RWED (es decir, leer, escribir, ejecutar y borrar el archivo), el Propio Usuario (O de
“owner”) puede RWED, los miembros del mismo Grupo de usuarios (G de “group”) no pueden hacer nada con
ese archivo, y el Resto de Usuarios de la Red (W de “world”) tampoco.
Borrado de un Fichero
ZEUS_$ DELETE nombre.TXT;5 (borra la versión número 5 del archivo nombre.TXT)
ZEUS_$ DELETE nombre.TXT.* (borra todas las versiones del archivo nombre.TXT)
ZEUS_$ DELETE *.TXT.* (borra todos los archivos con extensión TXT)
OJO!!-->
ZEUS_$ DELETE *.*.* (borra TODOS los archivos del directorio)
En VMS NO es posible recuperar ficheros que ya han sido borrados por lo que se recomienda precaución
en el empleo de este comando en especial con los *.
Borrado de un Directorio
El borrado de un directorio requiere:
0) Estar seguro de que se quiere borrar el directorio
1) Borrar todos los archivos que contiene el directorio que se desea eliminar
2) Situarse en el nivel de directorios anterior
3) Cambiar el sistema de protecciones del directorio que se quiere eliminar
de modo que el usuario tenga privilegio de borrado (D)
4) Borrar el directorio
Borrar todas las versiones de un archivo excepto la última
ZEUS_$ PURGE nombre.TXT
Volcar en pantalla el contenido de un archivo de texto sin editarlo
ZEUS_$ TYPE nombre.TXT
Duplicar el contenido de un archivo en otro archivo nuevo
ZEUS_$ COPY que.TXT donde.TXT
ZEUS_$ COPY que.TXT DISK$ALU:[A_C2xx.PRUEBAS]donde.TXT
Mover un Archivo de un directorio a otro/Cambio de Nombre de un Archivo
ZEUS_$ RENAME que.TXT DISK$ALU:[A_C2xx.PRUEBAS]donde.TXT
Imprimir un Archivo de Texto (NUNCA Ficheros Ejecutables ni Ficheros Objetos)
ZEUS_$ PRINT nombre.TXT
Creación de un Archivo de Texto y/o Edición de uno ya existente
ZEUS_$ EDIT nombre.TXT
Cuando se invoca el editor de texto se puede escribir y desplazarse libremente en las distintas lineas del
documento. Para preparar “programas fuente” de FORTRAN se recomienda emplear solamente códigos ASCII,
y por ello no acentuar palabras ni emplear la letra “ñ”.
Para abandonar el modo de edición teclear las teclas ‘‘Control+Z’’ y aparecerá un * en la parte inferior
izquierda de la pantalla. Seguidamente teclear una de las dos opciones siguientes:
* exit (guarda las modificaciones realizadas y sale del editor) <--- RECOMENDADA
* quit (no guarda los cambios y sale del editor)
Sobre Compilación, Linkado y Ejecución de Programas FORTRAN
Edición del “programa fuente” en Lenguaje FORTRAN
ZEUS_$ EDIT trabajo.FOR
.................(se escribe el programita)
Para salir del editor: Control+Z
*exit
Compilación del programa “trabajo.FOR”
ZEUS_$ FOR trabajo
Se crea un archivo “objeto” que el sistema automáticamente asigna la extensión “.OBJ”. No editar este
fichero ni imprimirlo porque está encriptado.
Si no hay errores, entonces se puede pasar a la fase de “linkado” y creación del archivo ejecutable.
Linkado de ficheros objeto.
ZEUS_$ LIN trabajo
Se crea un archivo “ejecutable” que el sistema automáticamente asigna la extensión “.EXE”. No editar este
fichero ni imprimirlo porque está encriptado.
Ejecución de un archivo “.EXE”
ZEUS_$ RUN trabajo
Para interrumpir la ejecución de un programa: teclear ‘‘Control+C’’
Para compilar y “linkar” un programa con subrutinas editadas en ficheros independientes
ZEUS_$ FOR trabajo
ZEUS_$ FOR subrutina1
ZEUS_$ FOR subrutina2
ZEUS_$ LIN trabajo+subrutina1+subrutina2
El resultado es un ejecutable llamado “trabajo.EXE”.
Para invocar la aplicación de Ayuda de FORTRAN
ZEUS_$ HELP FORTRAN
ZEUS_$ HELP FORTRAN INTRINSIC
(Proporciona informacion sobre las funciones intrinsecas
de FORTRAN, por ejemplo funciones trigonométricas, de generación
de números aleatorios, y muchas otras)
EJEMPLO
Crearemos en primer lugar un directorio llamado PRUEBAS y nos moveremos a él
ZEUS_$ CREATE/DIR [.PRUEBAS]
ZEUS_$ SHOW DEF
ZEUS_$ SET DEF [.PRUEBAS]
ZEUS_$ EDIT FACTORIAL.FOR
Y en el editor escribimos teniendo en cuenta los criterios de escritura de sentencias FORTRAN en cada
lı́nea, es decir empezando a escribir por el caracter numero 7 de la primera lı́nea:
123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
99
program calculo_factorial
implicit real*8(a-h,o-z),integer*4(i-n)
write(6,*)’ Dime el numero ’
read(5,*)numero
nfactorial=1
do i=1,numero
nfactorial=nfactorial*i
enddo
write(6,99)numero,nfactorial
format(’ El factorial de ’,i5,’ es ’,i5)
end
Y a continuación jugaremos un poco........
Descargar