方法1: 使用 subprocess.call
如果你在Linux中执行的命令是:
ls -l
那么你只要将命令按空格分隔,转换成列表,作为参数传给 subprocess.call 即可。
>>> import subprocess
>>> subprocess.call(["ls", "-l"])
total 72
lrwxrwxrwx 1 root root 7 Jul 19 2018 bin -> usr/bin
dr-xr-xr-x 5 root root 4096 Dec 1 2018 boot
drwxr-xr-x 3 root root 4096 Nov 10 2019 data
drwxr-xr-x 19 root root 2980 May 23 00:12 dev
drwxr-xr-x 89 root root 4096 Apr 16 21:43 etc
drwxr-xr-x 4 root root 4096 Dec 14 23:10 home
lrwxrwxrwx 1 root root 7 Jul 19 2018 lib -> usr/lib
lrwxrwxrwx 1 root root 9 Jul 19 2018 lib64 -> usr/lib64
drwx------ 2 root root 16384 May 12 2016 lost+found
drwxr-xr-x 2 root root 4096 Apr 11 2018 media
drwxr-xr-x 2 root root 4096 Apr 11 2018 mnt
drwxr-xr-x 2 root root 4096 Apr 11 2018 opt
dr-xr-xr-x 113 root root 0 Feb 5 00:22 proc
方法2:使用 subprocess.run
subprocess.run 是 python3.5 引入的方法,如果你是使用python,那么推荐用此方法。
>>> import subprocess
>>> subprocess.call(["ls", "-l"])
total 72
lrwxrwxrwx 1 root root 7 Jul 19 2018 bin -> usr/bin
dr-xr-xr-x 5 root root 4096 Dec 1 2018 boot
drwxr-xr-x 3 root root 4096 Nov 10 2019 data
drwxr-xr-x 19 root root 2980 May 23 00:12 dev
drwxr-xr-x 89 root root 4096 Apr 16 21:43 etc
drwxr-xr-x 4 root root 4096 Dec 14 23:10 home
lrwxrwxrwx 1 root root 7 Jul 19 2018 lib -> usr/lib
lrwxrwxrwx 1 root root 9 Jul 19 2018 lib64 -> usr/lib64
drwx------ 2 root root 16384 May 12 2016 lost+found
drwxr-xr-x 2 root root 4096 Apr 11 2018 media
drwxr-xr-x 2 root root 4096 Apr 11 2018 mnt
drwxr-xr-x 2 root root 4096 Apr 11 2018 opt
dr-xr-xr-x 113 root root 0 Feb 5 00:22 proc
关注公众号「Python之禅」,回复「1024」免费获取Python资源