天天看点

python执行shell命令四法

整理:python执行shell命令四法,示例如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

<code>#!/usr/bin/env python  </code>

<code># -*- coding: utf-8 -*- </code>

<code>import</code> <code>os</code>

<code>import</code> <code>platform</code>

<code>import</code> <code>subprocess</code>

<code>import</code> <code>commands</code>

<code>def</code> <code>subproc():</code>

<code>    </code><code>print</code> <code>"系统进程数:"</code>

<code>    </code><code>subprocess.call(</code><code>"ps -ef|wc -l"</code><code>,shell</code><code>=</code><code>True</code><code>)</code>

<code>def</code> <code>os_popen():</code>

<code>    </code><code>print</code> <code>"IP地址:"</code>

<code>    </code><code>os1 </code><code>=</code> <code>platform.system()</code>

<code>    </code><code>if</code> <code>os1 </code><code>=</code><code>=</code> <code>"Linux"</code><code>:</code>

<code>           </code><code>print</code> <code>os1</code>

<code>           </code><code>ip1 </code><code>=</code><code>os.popen(</code><code>"/sbin/ifconfig eth0|grep 'inet addr'"</code><code>).read().strip().split(</code><code>":"</code><code>)[</code><code>1</code><code>].split()[</code><code>0</code><code>]</code>

<code>           </code><code>print</code> <code>"\033[1;32;40m%s\033[0m"</code> <code>%</code> <code>ip1</code>

<code>def</code> <code>os_system():</code>

<code>    </code><code>os_command </code><code>=</code> <code>'free -m'</code> 

<code>    </code><code>cls_node1 </code><code>=</code> <code>"命令执行成功...."</code>

<code>    </code><code>cls_node2 </code><code>=</code> <code>"命令执行失败...."</code>

<code>    </code><code>if</code> <code>os.system(os_command) </code><code>=</code><code>=</code> <code>0</code><code>:</code>

<code>        </code><code>print</code> <code>"\n\033[1;32;40m%s\033[0m"</code> <code>%</code> <code>cls_node1</code>

<code>    </code><code>else</code><code>:</code>

<code>        </code><code>print</code> <code>"\n\033[1;31;40m%s\033[0m"</code> <code>%</code> <code>cls_node2</code>

<code>def</code> <code>os_commands():</code>

<code>    </code><code>(status, output) </code><code>=</code> <code>commands.getstatusoutput(</code><code>'pwd'</code><code>)</code>

<code>    </code><code>print</code> <code>status, output</code>

<code>def</code> <code>main():</code>

<code>    </code><code>subproc()</code>

<code>    </code><code>os_popen()</code>

<code>    </code><code>os_system()</code>

<code>    </code><code>os_commands()</code>

<code>if</code> <code>__name__ </code><code>=</code><code>=</code> <code>"__main__"</code><code>:</code>

<code>    </code><code>main()</code>

本文转自 koumm 51CTO博客,原文链接:http://blog.51cto.com/koumm/1438687,如需转载请自行联系原作者