Python UNIX系统管理指南
一本个人感觉很不错的书,这些文章算是实践

自带的终端来运行命令

chmod a+x是加读写权限

两个python,前面是目录,后面是选择解释器
#! /usr/bin/env python#A System Information Gathering Scriptimport subprocess
#Command 1uname = "uname"uname_arg = "-a"print ("Gathering system information with %s command:\n" % uname)subprocess.call([uname, uname_arg])
#Command 2diskspace = "df"diskspace_arg = "-h"print ("Gathering diskspace information %s command:\n" % diskspace)subprocess.call([diskspace, diskspace_arg])
#! /usr/bin/env bash#A System Information Gathering Script#Command 1UNAME="uname -a"printf "Gathering system information with the $UNAME command: \n\n"$UNAME
#Command 2DISKSPACE="df -h"printf "Gathering diskspace information with the $DISKSPACE command: \n\n"$DISKSPACE
你看以上的脚本的时候,其实是可以看的出来。输出几乎一样的。
那么call的时候将命令和参数分开写是不必要的。完全可以这样写
subprocess.call("df -h",shell=True")



python

bash

编写你个简单的函数
#! /usr/bin/env bash#A System Information Gathering Script
#Command 1function uname_func ()
{ UNAME="uname -a" printf "Gathering system information with the $UNAME command: \n\n" $UNAME}#Command 2function disk_func (){ DISKSPACE="df -h" printf "Gathering diskspace information with the $DISKSPACE command: \n\n" $DISKSPACE}
function main (){ uname_func disk_func}
Main#! /usr/bin/env python#A System Information Gathering Scriptimport subprocess
#Command 1def uname_func():
uname = "uname" uname_arg = "-a" print ("Gathering system information with %s command:\n" % uname) subprocess.call([uname, uname_arg])
#Command 2def disk_func():
diskspace = "df" diskspace_arg = "-h" print ("Gathering diskspace information %s command:\n" % diskspace) subprocess.call([diskspace, diskspace_arg])
#Main function that call other functionsdef main(): uname_func() disk_func()
main()

成功

失败,应该是语法错误

不加权限,就运行不了

把下文的main()改成这样,变成可福用脑本

我们来考虑找个东西,输出好像一样,那么它是真的一样吗?
print语句使用的是非正式的字符串表达式
简单变量名使用的事正式的字符串表达式
在处理自定义类时,这差异会变得十分明显

这个老东西写的不好~
我们创建了一个DoubleRep的类,里面有两个类
在实例化对象以后,指定对象df来保存该对象

赞 (0)
