#### 43.1.2 Including macros and variables in system commands

System commands can include the following:

- DITA2Go macro expressions
- macro variables you have defined in [MacroVariables].
- the following predefined macro variables (see §37.3.4 Using predefined macro variables):

  <$$_basename> | Base file name (without path or extension) of the current DITA source file
  <$$_currpath> | Path (without trailing slash) to the current directory where the configuration file resides
  <$$_macroparam> | Value of a parameter passed to the enclosing macro.
  <$$_prjpath> | Path (without trailing slash) to the directory where the map file resides

Predefined macro variables other than those listed here do not work in system commands. Macro variable <$$_macroparam> can be used only within a macro; see §37.7 Passing a parameter to a macro.

Include macro expressions

You can use macro expressions in system commands: math and string manipulations, conditional expressions, loops, formatted output, and so forth; see §37.6 Using expressions in macros.

Previous Topic: 43.1.1 Specifying system commands

Next Topic: 43.1.3 Monitoring system command execution

Parent Topic: 43.1 Executing operating-system commands

Sibling Topics:

43.1.1 Specifying system commands

43.1.3 Monitoring system command execution

43.1.4 Supplying system commands in a .bat file

43.1.5 Supplying system commands in a macro