Escape control and nonprintable characters in docker ps

The docker ps command displays the user-entered command running in a container.
If that command contained \n, \t, or other control characters, they were
interpreted literally, and newlines and tabs would be printed in the output.
Escape the command string to make things more readable.

Docker-DCO-1.1-Signed-off-by: Matt Heon <mheon@redhat.com> (github: mheon)
Upstream-commit: f55fa8211b6faf08091dd99ed8e5e3f08ab9cf1f
Component: engine
This commit is contained in:
Matthew Heon
2014-06-20 12:22:31 -04:00
parent fcdeff83df
commit 3ee2658a4c

View File

@ -1476,6 +1476,7 @@ func (cli *DockerCli) CmdPs(args ...string) error {
outCommand = out.Get("Command")
ports = engine.NewTable("", 0)
)
outCommand = strconv.Quote(outCommand)
if !*noTrunc {
outCommand = utils.Trunc(outCommand, 20)
}