User Tools

Site Tools


openvms:openvms-cheatsheet

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
openvms:openvms-cheatsheet [2023/05/31 08:39] dodgeropenvms:openvms-cheatsheet [2023/07/01 08:10] (current) dodger
Line 1: Line 1:
 ====== [CHEATSHEET] OpenVMS ====== ====== [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 variable''SYMBOLNAME'' |
 +| ''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:
 +<code DCL>
 +EDT :== EDIT/EDT/COMMAND=SYS$LOGIN:EDTINI.DDT
 +</code>
 +
 +
 +Replace a command with the command you want:
 +<code DCL>
 +PRINT :== PRINT/NOBURST/NOFLAG/NOTRAILER/NOTIFY
 +</code>
 +This will replace the command ''PRINT'' with ''PRINT/NOBURST/NOFLAG/NOTRAILER/NOTIFY'' everytime you launch it.
 +
 +===== Operations with symbols =====
 +
 +==== Arithmetic operations (integers) ====
 +
 +<code DCL>
 +$ 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
 +</code>
 +
 +=== List of operations ===
 +^ Operation ^ 
 +| ''+'' |
 +| ''-'' |
 +| ''*'' |
 +| ''/'' |
 +
 +==== String operations ====
 +
 +<code DCL>
 +$ APPLES = "Apples"
 +$ SHOW SYMBOL APPLES
 +  APPLES = "Apples"
 +$ FRUIT = "Oranges and " + APPLES
 +$ SHOW SYMBOL FRUIT
 +  FRUIT = "Oranges and Apples"
 +</code>
 +
 +==== Using subshells in commands ====
 +
 +Sub-shell is invoqued with ''2 SINGLE QUOTES+VARIABLE+1 SINGLE QUOTE'', for examples:
 +<code DCL>
 +$ FILETYPE = "login.com"
 +$ TYPEIT = "TYPE ''filename'"
 +$ SHOW SYMBOL TYPEIT
 +  "TYPE login.com"
 +</code>
 +
 +<WRAP center round tip 60%>
 +Take care with string usage '':=''
 +</WRAP>
 +What works and what not (as a sub-shell):
 +  * Works:
 +<code DCL>
 +$ FILETYPE := "login.com"
 +$ TYPEIT := "TYPE ''filename'"
 +$ SHOW SYMBOL TYPEIT
 +  "TYPE login.com"
 +</code>
 +
 +  * DON'T Work (as a literal)
 +<code DCL>
 +$ FILETYPE := "login.com"
 +$ TYPEIT := "TYPE" +  filename
 +$ SHOW SYMBOL TYPEIT
 +  "TYPE FILENAME"
 +</code>
 +
 +<WRAP center round tip 60%>
 +In the other hand, without forcing string assignment
 +</WRAP>
 +Both are assigned as a variable:
 +<code DCL>
 +$ FILETYPE = "login.com"
 +$ TYPEIT = "TYPE ''filename'"
 +$ SHOW SYMBOL TYPEIT
 +  "TYPE login.com"
 +</code>
 +<code DCL>
 +$ FILETYPE = "login.com"
 +$ TYPEIT = "TYPE" +  filename
 +$ SHOW SYMBOL TYPEIT
 +  "TYPE login.com"
 +</code>
  
 ====== Startup ====== ====== Startup ======
Line 23: Line 166:
 Username: SYSTEM Username: SYSTEM
 Password: Password:
 +</code>
 +
 +
 +
 +===== Logout =====
 +<code DCL>
 +LOGOUT
 +</code>
 +
 +<code DCL>
 +LOGOUT/FULL
 </code> </code>
  
Line 41: Line 195:
 SHOW WSMAX SHOW WSMAX
 </code> </code>
- 
  
  
openvms/openvms-cheatsheet.1685522368.txt.gz · Last modified: 2023/05/31 08:39 by dodger