User Tools

Site Tools


openvms:openvms-cheatsheet

[CHEATSHEET] OpenVMS

Main concepts

Keywords

sort code Full name Translation to linux
UAF User authorization File It's a combination of etc/passwd, etc/group and SElinux/DB concepts with grants and roles
UIC User Identification CODE UID the user identificator, in OpenVMS is [1,100]. As in linux should NOT be unique
DCL Digital Command Language bash LOL
CDU Command definition utility It's a kind of IDE or getops, allow command line definitions
RMS Record Management Services journalctl (logs)
JBC Job Controller Queues
Symbol - A variable…

key concepts

OpenVMS Linux Comment
SYS$MANAGER:SYLOGIN.COM /etc/bashrc
SYS$LOGIN:LOGIN.COM ${HOME}/.bashrc
CTRL/Y CTRL+C when writing a command and you have a mistake, cancel the input (similar to sqlplus and CTRL+C)
CTRL/Z CTRL+C Similar but on a interactive input prompt (running a cmd in interactive input mode)
! # comment delimiter
% nothing here Error message delimiter
^-(.*) nothing here Continue a message. For example 1st line begin with % and 2nd line with -

Error levels

alpha numeric level
-S- 1 Success
-I- 3 INFO
-W- 0 Warning
-E- 2 Error
-F- 4 SEVERE

Programming

More or less

Symbols (Variables)

Creation Description
SYMBOLNAME = <value> Creates a local symbol (string or integer)
SYMBOLNAME == <value> Creates a global symbol (string or integer)
SYMBOLNAME := <value> Creates a local STRING symbol
SYMBOLNAME :== <value> Creates a global STRING symbol
DELETE/SYMBOL SYMBOLNAME Destroy local variableSYMBOLNAME
DELETE/SYMBOL/GLOBAL SYMBOLNAME Destroy global variable SYMBOLNAME
SHOW SYMBOL SYMBOLNAME Show content of the variable SYMBOLNAME

Aliases through symbols

Create an alias EDT with a frequently used command:

EDT :== EDIT/EDT/COMMAND=SYS$LOGIN:EDTINI.DDT

Replace a command with the command you want:

PRINT :== PRINT/NOBURST/NOFLAG/NOTRAILER/NOTIFY

This will replace the command PRINT with PRINT/NOBURST/NOFLAG/NOTRAILER/NOTIFY everytime you launch it.

Operations with symbols

Arithmetic operations (integers)

$ APPLES = 10
$ SHOW SYMBOL APPLES
  APPLES = 10    Hex = 0000000A    Octal = 00000000012
 
$ APPLES = 2 * (4+5)
$ SHOW SYMBOL APPLES
  APPLES = 18    Hex ...
$ ORANGES = 15
$ TOTAL_FRUIT = APPLES + ORANGES
$ SHOW SYMBOL TOTAL_FRUIT
  TOTAL_FRUIT = 33

List of operations

Operation
+
-
*
/

String operations

$ APPLES = "Apples"
$ SHOW SYMBOL APPLES
  APPLES = "Apples"
$ FRUIT = "Oranges and " + APPLES
$ SHOW SYMBOL FRUIT
  FRUIT = "Oranges and Apples"

Using subshells in commands

Sub-shell is invoqued with 2 SINGLE QUOTES+VARIABLE+1 SINGLE QUOTE, for examples:

$ FILETYPE = "login.com"
$ TYPEIT = "TYPE ''filename'"
$ SHOW SYMBOL TYPEIT
  "TYPE login.com"

Take care with string usage :=

What works and what not (as a sub-shell):

  • Works:
$ FILETYPE := "login.com"
$ TYPEIT := "TYPE ''filename'"
$ SHOW SYMBOL TYPEIT
  "TYPE login.com"
  • DON'T Work (as a literal)
$ FILETYPE := "login.com"
$ TYPEIT := "TYPE" +  filename
$ SHOW SYMBOL TYPEIT
  "TYPE FILENAME"

In the other hand, without forcing string assignment

Both are assigned as a variable:

$ FILETYPE = "login.com"
$ TYPEIT = "TYPE ''filename'"
$ SHOW SYMBOL TYPEIT
  "TYPE login.com"
$ FILETYPE = "login.com"
$ TYPEIT = "TYPE" +  filename
$ SHOW SYMBOL TYPEIT
  "TYPE login.com"

Startup

Show available boot devices

show device

boot from device

boot [DEVICE]

ex:

boot DKA0

Login

root is SYSTEM:

 Welcome to OpenVMS (TM) Alpha Operating System, Version V8.3
 
Username: SYSTEM
Password:

Logout

LOGOUT
LOGOUT/FULL

Basic Commands

df

SHOW DEVICE SYS$SYSDEVICE

See system parameters

To check the values of your system parameters, enter the following command:

RUN SYS$SYSTEM:SYSGEN

And then under SYSGEN> prompt, you can list parameters, for example:

SHOW WSMAX

Show system pagelets

WRITE SYS$OUTPUT F$GETSYI("CONTIG_GBLPAGES")

Show free pagelets

WRITE SYS$OUTPUT F$GETSYI("FREE_GBLSECTS")

Generate more pagelets

AUTOGEN

Find how many pagelets are used by EXE

In this case DCLTABLES.EXE

DIRECTORY/SIZE SYS$LIBRARY:DCLTABLES.EXE

System config

change system config

You have to edit:

SYS$SYSTEM:MODPARAMS.DAT

Still don't know how to edit…

update system parameters and reboot

@SYS$UPDATE:AUTOGEN GETDATA REBOOT

Change dynamic parameters using SYSGEN

Run SYSGEN

RUN SYS$SYSTEM:SYSGEN

SYSGEN: Modify parameter

And (example):

SYSGEN> USE ACTIVE
SYSGEN> SET GBLPAGES 100000
SYSGEN> WRITE ACTIVE
SYSGEN> EXIT

SYSGEN: List all parameters

SHOW /ALL

empty

 
openvms/openvms-cheatsheet.txt · Last modified: 2023/07/01 08:10 by dodger