Què és DCL?

DCL (Digital Command Language) és el llenguatge de comandes utilitzat en OpenVMS per a la gestió del sistema i l'automatització de tasques. És un llenguatge potent que permet als usuaris escriure scripts per automatitzar processos repetitius, gestionar fitxers, controlar processos i molt més.

Objectius del Mòdul

En aquest mòdul, aprendràs:

  • Els conceptes bàsics del scripting amb DCL.
  • Com crear i executar scripts DCL.
  • Les estructures bàsiques de control en DCL.
  • Com gestionar variables i tipus de dades en DCL.

Conceptes Bàsics

Creació d'un Script DCL

Un script DCL és un fitxer de text que conté una seqüència de comandes DCL. Per crear un script DCL, segueix aquests passos:

  1. Crea un fitxer de text amb l'extensió .COM. Per exemple, myscript.COM.
  2. Escriu les comandes DCL dins del fitxer.
  3. Guarda el fitxer.

Exemple Bàsic

A continuació, es mostra un exemple bàsic d'un script DCL que mostra un missatge per pantalla:

$! Aquest és un comentari
$ WRITE SYS$OUTPUT "Hola, món!"
  • $! indica un comentari.
  • WRITE SYS$OUTPUT és la comanda per escriure un missatge a la sortida estàndard.

Executar un Script DCL

Per executar un script DCL, utilitza la comanda @ seguida del nom del fitxer:

$ @myscript.COM

Estructures de Control

Condicionals

DCL permet l'ús de condicionals per controlar el flux del programa. La sintaxi bàsica és:

$ IF <condició> THEN <comanda>
$ IF <condició> THEN
$   <comanda1>
$   <comanda2>
$ ENDIF

Exemple

$ IF F$SEARCH("testfile.txt") .NES. "" THEN WRITE SYS$OUTPUT "El fitxer existeix."
$ IF F$SEARCH("testfile.txt") .EQS. "" THEN WRITE SYS$OUTPUT "El fitxer no existeix."

Bucles

DCL també permet l'ús de bucles per repetir una sèrie de comandes. Els bucles més comuns són FOR i WHILE.

Bucle FOR

$ FOR i IN 1 TO 5 DO WRITE SYS$OUTPUT "Iteració: ''i'"

Bucle WHILE

$ i = 1
$ WHILE i .LE. 5 DO
$   WRITE SYS$OUTPUT "Iteració: ''i'"
$   i = i + 1
$ ENDWHILE

Variables i Tipus de Dades

Declaració de Variables

Les variables en DCL es declaren i s'assignen amb el signe =:

$ nom = "OpenVMS"
$ edat = 30

Tipus de Dades

DCL suporta principalment dos tipus de dades: cadenes de text i nombres.

  • Cadenes de text: Es declaren entre cometes dobles.
  • Nombres: Es declaren directament.

Ús de Funcions

DCL proporciona diverses funcions integrades per treballar amb variables. Per exemple, F$LENGTH retorna la longitud d'una cadena:

$ cadena = "OpenVMS"
$ longitud = F$LENGTH(cadena)
$ WRITE SYS$OUTPUT "La longitud de la cadena és: ''longitud'"

Exercicis Pràctics

Exercici 1: Crear un Script Bàsic

Crea un script DCL que faci el següent:

  1. Declari una variable amb el teu nom.
  2. Escrigui un missatge de benvinguda utilitzant aquesta variable.

Solució

$! Script de benvinguda
$ nom = "Joan"
$ WRITE SYS$OUTPUT "Benvingut, ''nom'!"

Exercici 2: Condicional i Bucle

Crea un script DCL que:

  1. Comprovi si un fitxer anomenat data.txt existeix.
  2. Si existeix, mostri un missatge indicant-ho.
  3. Si no existeix, creï el fitxer i escrigui "Fitxer creat" dins del fitxer.

Solució

$! Script de comprovació de fitxer
$ IF F$SEARCH("data.txt") .NES. "" THEN -
$   WRITE SYS$OUTPUT "El fitxer data.txt existeix."
$ ELSE -
$   OPEN/WRITE fitxer data.txt
$   WRITE fitxer "Fitxer creat"
$   CLOSE fitxer
$   WRITE SYS$OUTPUT "El fitxer data.txt ha estat creat."
$ ENDIF

Conclusió

En aquest mòdul, has après els conceptes bàsics del scripting amb DCL, incloent la creació i execució de scripts, l'ús d'estructures de control, i la gestió de variables i tipus de dades. Amb aquests coneixements, ja pots començar a automatitzar tasques en OpenVMS utilitzant DCL. En els següents mòduls, aprofundirem en temes més avançats com les subrutines, la gestió d'errors i altres tècniques avançades de scripting.

Curs de Programació OpenVMS

Mòdul 1: Introducció a OpenVMS

Mòdul 2: Comandes Bàsiques d'OpenVMS

Mòdul 3: Sistema de Fitxers d'OpenVMS

Mòdul 4: Scripting amb DCL

Mòdul 5: Gestió del Sistema OpenVMS

Mòdul 6: Xarxes a OpenVMS

Mòdul 7: Programació Avançada a OpenVMS

Mòdul 8: Clúster d'OpenVMS

Mòdul 9: Seguretat a OpenVMS

Mòdul 10: Resolució de Problemes i Optimització

© Copyright 2024. Tots els drets reservats