Question

I am executing a command via Python's subprocess module. How can I view the full command that was executed? For instance, if I submitted ['ls', '-l'], I would like an easy way to see 'ls -l'.

Was it helpful?

Solution

This should work.

ls = subprocess.Popen(['ls', '/tmp'])
cmd = file("/proc/%d/cmdline" % (ls.pid)).read()

See The /proc Filesystem for more info and ideas.

Note that some commands will ask you for privileges.

Of course you could (as Simeon has pointed out) apply join to the list you passed to Popen.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top