编写类du命令Python脚本

 1 #!/usr/bin/env python
 2 #_*_ coding:utf-8 _*_
 3 #计算整个目录的大小,脚本接受-H参数,来加上适当的单位
 4 #功能像du看齐
 5
 6 import os,sys
 7 from optparse import OptionParser
 8
 9
10 def option():
11         parser = OptionParser()
12         parser.add_option(‘-H‘,‘--Human‘,dest=‘human‘,action=‘store_true‘,default=False,help=‘print sizes in human readable format‘)
13         option,args = parser.parse_args()
14         return option,args
15
16 def findfile(dirpath):
17     path = os.walk(dirpath)
18     for roots,dirs,files in path:
19         for file in files:
20                 yield os.path.join(roots,file)
21
22
23 def filesize(option,file):
24         size = os.path.getsize(file)
25         if not option:
26             return str(size)
27         else:
28             if size >= 1024000000:
29                 return str(size/1024/1024/1024) + ‘G‘
30             elif size >= 1024000:
31                 return str(size/1024/1024) + ‘M‘
32             elif size >= 4096:
33                 return str(size/1024) + ‘K‘
34             else:
35                 return ‘4.0K‘
36
37
38 def main():
39         options,args = option()
40         try:
41                 path = args[0]
42         except IndexError as e:
43                 sys.exit(‘%s need a directory‘ % __file__)
44         for file in findfile(path):
45                 size = filesize(options.human,file)
46                 print size,file
47
48
49 if __name__ == ‘__main__‘:
50     main()
51             
时间: 2024-08-01 09:27:03

编写类du命令Python脚本的相关文章

在ubuntu linux 中编写一个自己的python脚本

在ubuntu linux 中编写一个自己的简单的bash脚本. 实现功能:终端中输入简单的命令(以pmpy为例(play music python),为了区别之前说的bash脚本添加了py后缀),来实现音乐的播放.注:本人ununut中安装了audacious,所以就以audacious为例,来实现音乐的播放. 第一步:进入一个目录,最好是自己特别选定的,如果用文件浏览器可以新建一个名为pmpy空白文档文件:如果是用终端可以输入命令:vi pmpy(可能会因为位置问题,需要添加sudo) 第二

如何编写一个带命令行参数的Python文件

看到别人执行一个支持命令行参数的python文件,瞬间觉得高大上起来.牛逼起来,那么如何编写一个带命令行参数的python脚本呢?不用紧张,下面将简单易懂地让你学会如何让自己的python脚本,支持命令行参数. 首先你要知道python中的sys模块的一些功能: import sys print "the number of python program's argument:",len(sys.argv) print "the value of every argument

SecureCRT中python脚本编写

SecureCRT中python脚本编写学习指南 SecureCRT python 引言 在测试网络设备中,通常使用脚本对设备端进行配置和测试以及维护:对于PE设备的测试维护人员来说使用较多是SecureCRT工具:SecureCRT支持VB.JavaScript.Python等多种脚本语言,为了实现脚本在CRT中更加丰富稳定地执行,掌握CRT的常用函数是非常有用的.接下来的时间我将对SecureCRT脚本编写的常用函数展开学习应用. 内容 (1)使用python语言实现SecureCRT中的D

变量-数据类型-对象-如何编写python脚本

标识符的命名规则变量是标识符的例子. 标识符 是用来标识 某样东西 的名字.在命名标识符的时候,你要遵循这些规则:标识符的第一个字符必须是字母表中的字母(大写或小写)或者一个下划线(‘ _ ’).标识符名称的其他部分可以由字母(大写或小写).下划线(‘ _ ’)或数字(0-9)组成.标识符名称是对大小写敏感的.例如,myname和myName不是一个标识符.注意前者中的小写n和后者中的大写N.有效 标识符名称的例子有i.__my_name .name_23和a1b2_c3.无效 标识符名称的例子

如何在命令行里运行python脚本

python是一款应用非常广泛的脚本程序语言,谷歌公司的网页就是用python编写.python在生物信息.统计.网页制作.计算等多个领域都体现出了强大的功能.python和其他脚本语言如java.R.Perl 一样,都可以直接在命令行里运行脚本程序.本文给大家介绍一下如何在命令行里运行python脚本 工具/原料 python:CMD命令行:windows操作系统 方法/步骤 首先下载安装python,建议安装2.7版本以上,3.0版本以下,由于3.0版本以上不向下兼容,体验较差. 打开文本编

Python编写的Linux网络设置脚本,Debian Wheezy上测试通过

hon编写的Linux网络设置脚本,Debian Wheezy上测试通过 阿里百川梦想创业大赛,500万创投寻找最赞的APP 技术细节参见Linux网络设置高级指南 注意事项参见程序注释 快速使用指南: 根菜单下,直接回车意味着刷新 其它输入的时候,除了标明特定含义外,直接回车通常意味着取消或者跳过 net-config.py ? 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

[Python]linux自己定义Python脚本命令

在window下写好的程序配置到Linux上,要实现随意文件夹下的命令调用. 因为初学Linux,这里从文件传输等最主要的方法入手,记录配置的过程中遇到的各种问题. 连接远端server 这里使用putty这个工具,用SSH方法连上远端server 传输文件 使用FTP传输,这里用filezilla作为本地server,图形化界面,方便快捷 安装文件中引用的python包 wget url 命令联网下载安装包 wget http:/www.^&*&%%& 解压缩(详细可见blog:

[Python]linux自定义Python脚本命令

在window下写好的程序配置到Linux上,要实现任意目录下的命令调用. 由于初学Linux,这里从文件传输等最基本的方法入手,记录配置的过程中遇到的各种问题. 连接远端服务器 这里使用putty这个工具,用SSH方法连上远端服务器 传输文件 使用FTP传输,这里用filezilla作为本地服务器,图形化界面,方便快捷 安装文件里引用的python包 wget url 命令联网下载安装包 wget http:/www.^&*&%%& 解压缩(具体可见blog:http://www

Python脚本远程批量执行命令

摘要 本文主要写用python脚本远程连接多台服务器,然后批量执行命令,最终返回命令执行结果. 这个可以说是Ansible,Puppet等工具的最简单的雏形. 做运维的同学应该都知道的. 正文 multi_task.py #_*_coding:utf-8_*_ import  multiprocessing import paramiko import getpass import ConfigParser class MultiTask(object):     '''handles all