Advanced Configuration
Usually, DMK configures the environment automatically. In some rare cases it must be adapted. And DMK gives you the possiblility to define your own aliases and variables.
Aliases & Variables Management
The following paragraphs explain how to create your own aliases and variables.
Declare an alias
Aliases are declared using the following syntax
alias::<name>::[var|novar]_[force|noforce]::<your code>::# comment
[var|novar]
var : creates automatically a variable with the name of the alias with the path specified in the alias. The alias
cdh='cd $ORACLE_HOME'
creates a variablecdh=$ORACLE_HOME
novar : doesn’t create the above variable
[force|noforce]
force : if a command or an alias already exists it’s overwritten
noforce: a warning is printed instead of overwriting the existing alias or command
Example of a warning printout
2012-06-22_15-31-19::DMK.pm::ComputeConfig ::WARNING ==> $DMK_HOME\\etc\\dmk.conf alias/command "u" is already in use, Please use FORCE option to override it
For Windows you can explicitly specify if an alias is for cmd.exe or powershell. Add the suffix @cmd or @ps1 to the alias name (e.g. env@cmd).
If you specify an alias for ps1 and it is enclosed in brackets (...) it will be used as-is as a function definition (aliases are implemented as functions). Otherwise, DMK tries to reformat it as a function.
Declare a variable
Variables are declared using the following syntax
var::<name>::[ =|+|-]::[ begin|end|nooption|warn|nowarn]::<your value>::
[=|+|-]
= : Equal operator
+ : expand an existing path variable
- : contract, remove element from a path variable
[begin|end|noption|warn|nowarn]
begin/end : works only with the operators [+|-]
nooption|warn : default behavior is to print a warning in case the variable exists
nowarn : disable warning and overwrites the variable
Example of a warning printout
2012-06-22_18-46-09::DMK.pm::ModifyConfigVar ::WARNING ==> Variable : ORACLE_BASE has been overwritten
2012-06-22_18-46-09::DMK.pm::ModifyConfigVar ::WARNING ==> Old value : /u01/app/grid
2012-06-22_18-46-09::DMK.pm::ModifyConfigVar ::WARNING ==> New value : "/u01/app/oracle"
🪟 For Windows, you can specify variables in Unix ($ORACLE_HOME) or Windows (%ORACLE_HOME%) notation. DMK rewrites it to the required syntax.
Migration from BasEnv (or other software) to DMK
BasEnv is an Oracle environment software from the former company Trivadis AG (now Accenture). This software is similar to DMK. The difference in the usage: Some aliases, variables and scripts have a different name (e.g. BE_ORA_DB_NAME vs. DMK_ORA_DB_NAME). If you migrate from BasEnv to DMK, see Migration to DMK
Last updated