HEX
Server: Apache
System: Linux server2.voipitup.com.au 4.18.0-553.109.1.lve.el8.x86_64 #1 SMP Thu Mar 5 20:23:46 UTC 2026 x86_64
User: posscale (1027)
PHP: 8.2.30
Disabled: exec,passthru,shell_exec,system
Upload Files
File: //proc/self/root/opt/saltstack/salt/lib/python3.10/site-packages/salt/output/txt.py
"""
Simple text outputter
=====================

The ``txt`` outputter has been developed to make the output from shell commands
on minions appear as they do when the command is executed on the minion.

CLI Example:

.. code-block:: bash

    salt '*' foo.bar --out=txt
"""

import pprint


def output(data, **kwargs):  # pylint: disable=unused-argument
    """
    Output the data in lines, very nice for running commands
    """
    ret = ""
    if hasattr(data, "keys"):
        for key in data:
            value = data[key]
            # Don't blow up on non-strings
            try:
                for line in value.splitlines():
                    ret += f"{key}: {line}\n"
            except AttributeError:
                ret += f"{key}: {value}\n"
    else:
        try:
            ret += data + "\n"
        except TypeError:
            # For non-dictionary, non-string data, just use print
            ret += f"{pprint.pformat(data)}\n"

    return ret