主要有os.system(),os.popen()和commands.getstatusoutput()三个命令。
python文档的解释如下:
os.system()
-
Execute the command (a string) in a subshell. This is implemented by calling the Standard C function system() , and has the same limitations. Changes to sys.stdin , etc. are not reflected in the environment of the executed command.
On Unix, the return value is the exit status of the process encoded in the format specified for wait() . Note that POSIX does not specify the meaning of the return value of the C system() function, so the return value of the Python function is system-dependent.
On Windows, the return value is that returned by the system shell after running command , given by the Windows environment variable COMSPEC : on command.com systems (Windows 95, 98 and ME) this is always 0 ; on cmd.exe systems (Windows NT, 2000 and XP) this is the exit status of the command run; on systems using a non-native shell, consult your shell documentation.
The subprocess module provides more powerful facilities for spawning new processes and retrieving their results; using that module is preferable to using this function. Use the subprocess module. Check especially the Replacing Older Functions with the subprocess Module section.
Availability: Unix, Windows.
通过创建一个子进程来执行命令。调用c的system函数。
在unix机器上,在POSIX标准中,返回值类型由系统决定。
commands.getstatusoutput()
Execute the string cmd in a shell with os.popen() and return a 2-tuple (status, output) . cmd is actually run as { cmd ; } 2>&1 , so that the returned output will contain output or error messages. A trailing newline is stripped from the output. The exit status for the command can be interpreted according to the rules for the C function wait() .
返回值为返回状态和命令的输出结果。保存在一维数组中。其中输出结果包含错误信息输出。