日常方便使用的Python脚本实现

目录

文件批量重命名

bin文件合并

正文

1.python根据不同条件批量实现文件重命名

因为下载的电视剧名字比较乱,但却按照下载时间顺序依次排列,而手动重命名或者找软件太麻烦,我就自己实现了个:

import os
import time

def rename(path):
    Num = 1

    #获得当前文件夹下的所有文件路径
    pathlist = [os.path.join(path, filename)
                    for filename in os.listdir()
                        if filename.split(‘.‘)[-1] != ‘py‘]

    #根据文件修改时间或创建时间来进行排序
    #time.ctime(os.path.getmtime(path))/time.ctime(os.path.getctime(path))
    pathlist = sorted(pathlist,
                      key=lambda path:‘ ‘.join(time.ctime(os.path.getmtime(path)).split(‘ ‘)[::-1]),
                      reverse=False);

    #对排序后的文件进行重命名
    for pathname in pathlist:
        newname = str(Num) + ". 漂亮的李慧珍" + ".mp4";
        Num += 1;
        os.rename(pathname, os.path.join(path, newname))
        print(pathname, newname);

#获得当前文件夹路径
path = os.path.split(os.path.realpath(__file__))[0];
rename(path)

2.根据偏移值实现bin文件合并

#/usr/bin/python
import os
import sys
from struct import *

#bin文件合并
def bin_connect(bin1, bin2, outbin, offset):
    fin1 = open(bin1, ‘rb‘)
    fin2 = open(bin2, ‘rb‘)
    fout = open(outbin,‘wb‘)
    result = fin1.read()
    i = len(result)
    while i<int(offset, 16):
        i+=1
        result += b‘\0‘                 # a bytes-like object is required, not ‘str‘, ‘‘->b‘‘
    result += fin2.read()
    fout.write(result)
    fin1.close();
    fin2.close();
    fout.close();

#举例
#combine.py -i bootloader.bin ramdisk.bin 0x10000 -o combine.bin
if len(sys.argv) != 7 or sys.argv[1] != ‘-i‘ or sys.argv[5] != ‘-o‘:
    print(‘usage:‘)
    print(‘convert binary format to hexadecimal format: ‘)
    print(‘combine.py -i startfile endfile offset -o outfile‘)
    exit(0)

bin_connect(sys.argv[2], sys.argv[3], sys.argv[6], sys.argv[4])
时间: 2024-08-09 23:53:02

日常方便使用的Python脚本实现的相关文章

利用python脚本自动下载ICML会议接受的文章

最近需要下载ICML会议2015年接受的最新的文章,但是到官网一看,那么多的文章,如果我一篇一篇点击下载的话,什么时候是个头呢?于是就想着用python脚本对文章的页面进行处理,得到相关文章的url,然后进行下载. 通过观察ICML会议的Accepted Papers发现,其的结构还是比较整齐的,其中我们需要的信息的代码片段如下: <div class="paper"> <p class="title">Approval Voting and

Python脚本实战汇总

前言: 总体上来说shell能够实现的功能python也能实现,反之亦然,但遗憾的是,很多的项目处于内网的环境,连基本的vim都没有,更不用提安装python编译环境与安装第三方库,和集成好的IDE,当然,如果你能够忍受调试环境的麻烦的话,python也是不错的选择,虽然有这些因素带来的不便,但python脚本自然有它较shell更优秀的地方,比如在数据处理上,图形处理上,能够方便的将需要处理的数据生成表格与图片,再比如在数据库的连接上,直接就有现成的函数可以使用,本篇博客将会长期更新,以记录在

Python脚本远程批量执行命令

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

python脚本修改hosts文件

记一次使用python脚本来修改hosts文件,由于公司服务器需要换ip地址,服务器里都是Linux系统,而hosts文件中有些解析的ip,手动一台一台的解析太麻烦,就写了这个脚本.本来以为感觉很简单,但是写的过程真不好写,也试过shell脚本,不过也不好写.然后就直接用python写,也找了一些网上的教程,不过也没有很好的解决问题.下面把脚本贴出来记录下 #!/usr/bin/python #coding:utf8 import os import sys import re hostsfil

将Python脚本文件包装成可执行文件

将Python脚本文件包装成可执行文件,其目的有二: 一则: 不需要依赖Python编译器就可以运行软件 二则: 不想让自己的源码公布出去 常用的工具有: py2exe.cx_freeze等 [工具:py2exe] 安装py2exe 安装该工具很简单: 只需要从官方网站:http://www.py2exe.org/下载与版本对应的安装程序,点击下一步即可完成安装. 安装后,执行import py2exe,不报错则表示安装成功! >>> import py2exe >>>

用 Python 脚本实现对 Linux 服务器的监控

hon 分享到:8 原文出处: 曹江华 目前 Linux 下有一些使用 Python 语言编写的 Linux 系统监控工具 比如 inotify-sync(文件系统安全监控软件).glances(资源监控工具)在实际工作中,Linux 系统管理员可以根据自己使用的服务器的具体情况编写一下简单实用的脚本实现对 Linux 服务器的监控. 本文介绍一下使用 Python 脚本实现对 Linux 服务器 CPU 内存 网络的监控脚本的编写. Python 版本说明 Python 是由 Guido va

Windows运行python脚本文件

开始学习python就是听说这个语言写脚本文件特别方便,简单使用.学了一段时间,但是直到现在我才直到直到怎么在Windows的cmd上运行脚本文件. 之前一直都是在pycharm上运行,并不实用. 百度上说的已经很清楚了,但是还是需要自己亲手实验一下.http://jingyan.baidu.com/article/22fe7ced18776f3002617f2e.html 我刚开始也是加了环境变量了 啊,但是一直不好使,原来我的程序开头没有加上  #!usr/bin/python  表示该脚本

【转载】关于Python脚本开头两行的:#!/usr/bin/python和# -*- coding: utf-8 -*-的作用 &ndash; 指定文件编码类型

下面的内容来自:http://www.cnblogs.com/blueskylcc/p/5332642.html, 对方也是转的,不过没有找到转载的出处: 1.#!/usr/bin/python 是用来说明脚本语言是 python 的 是要用 /usr/bin下面的程序(工具)python,这个解释器,来解释 python 脚本,来运行 python 脚本的. 2.# -*- coding: utf-8 -*- 是用来指定文件编码为 utf-8 的 详情可以参考:PEP 0263 - Defin

python脚本删除n天之前的文件

管理Linux经常用到python脚本,然后写了脚本后,经常为了生成的文件占用磁盘空间而犯愁,这些写个函数以方便以后使用: def rmdaybefore(pfile, days):     """     Delete pfile diectory days before files below     :param pfile: local path     :param days: before days     :return: a list os.listdir p