openvms:openvms-cheatsheet
Table of Contents
[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 |
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) <code DCL> $ FILETYPE := “login.com” $ TYPEIT := “TYPE” + filename $ SHOW SYMBOL TYPEIT “TYPE FILENAME” </code>
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