Case conversion

6.10 z/VM guest

All lowercase characters are converted by z/VM® to uppercase. To compensate for this effect, the console device driver converts all input to lowercase.

For example, if you type VInput VMSG echo $PATH, the device driver gets ECHO $PATH and converts it into echo $path.

Linux® and bash are case-sensitive and require some specifications with uppercase characters. To include uppercase characters in a command, use the percent sign (%) as a delimiter. The console device driver interprets characters that are enclosed by percent signs as uppercase.

This behavior and the delimiter are adjustable at build-time by editing the driver sources.

Examples

In the following examples, the first line shows the user input. The second line shows what the device driver receives after the case conversion by CP. The third line shows the command that is processed by bash.

  • #cp vinput vmsg ls -l
    CP VINPUT VMSG LS -L
    ls -l
    ...
  • The following input would result in a bash command that contains a variable $path, which is not defined in lowercase:
    #cp vinput vmsg echo $PATH
    CP VINPUT VMSG ECHO $PATH
    echo $path
    ...
    To obtain the correct bash command enclose the uppercase string with the conversion escape character:
    #cp vinput vmsg echo $%PATH%
    CP VINPUT VMSG ECHO $%PATH%
    echo $PATH
    ...