前言
pz7z8是用python写的一些杂七杂八的小脚本。使用pip install pz7z8即可安装使用。
如果记不清楚这个包里有哪些东西,都叫什么名字,大约有什么功能,可以在安装后直接执行pz7z8察看帮助。可以根据提示找到这份文档。
各脚本说明
chgver 修改版本号
当前处理流程如下:
- 执行 ./setup.py sdist
- 打开setup.py文件读
- 复制setup.py为setup.py.bak
- 搜索 version=x.y.z 这样的行,其中x,y,z都是数字
- 设置z=z+1,修改setup.py
- 执行twine upload dist/*x.y.z.tar.gz
delsame 删除相同的文件
带2个参数,指定目录1和目录2。
遍历目录1,针对目录1下所有的文件(包含目录、子目录)都会同步查找目录2下是否有相对路径相同、md5值相同的文件,如果找到,删除目录2中的相同文件。
dfslow 找出速度比较慢的挂载盘
无参数。
读取/etc/mtab文件,逐一用df检查每一条,如果时间超过1秒,显示慢的这一行相关信息。
如果正常,则没有任何显示。
dsync 双向的文件同步工具
执行时可以带一个参数指定配置文件,如果不指定,则使用当前目录下的dsync.conf
配置文件样例如下:
d1=/目录1
d2=/目录2
c1=gbk
c2=utf8
sp=|
f=文件1
f=文件2
f=文件3
f=文件4在目录1中名称|文件4在目录2中名称
以上配置内容不要为了美观等因素增加空格,会影响解析出的内容。
执行时会在d1,d2两个目录下依次检查文件,如果有不一样(md5值不等、只有一个目录有等)则复制日期新的到日期旧的目录。如果md5值不等但是文件修改时间相等则报警。
注意d1,d2在配置文件中可以有多行,后续检查以最后的d1,d2为准。
c1,c2设置编码,比如上面这个设置,就可以一个目录下放gbk的编码文件,另一个目录下放utf8的文件,比较的时候会考虑这个编码的因素,转换了之后进行比较。同步的时候也会做相应转换。c1,c2可以省略,省略的时候当utf8处理。如果2个都省略,则直接拷贝,不做转码。
sp是分隔符,不设置则默认为|。如果需要同步的文件在两个目录中文件名不同,则使用分隔符把两个文件名分开。同样要注意在文件名两边、分隔符两边不要留空格,除非文件名本身包含空格。
filenum 统计目录下的文件数量
执行时可以带一个参数指定目录,如果不指定则使用当前目录。
递归统计此目录下的所有文件数量并输出。
注意输出顺序是按照搜索的顺序,看着会有些乱。可以使用以下语句进行排序并输出哪些目录下文件数量较多。
filenum 目录 |sort -g|tail
finfo 记录文件(目录)的信息
finfo 目录名 md文件名
忽略目录名则使用当前目录。
忽略markdown文件名则使用目标目录下的finfo.md文件。
md2pdf 把markdown文件编译成pdf
执行时带参数指定要转换的markdown文件名,可以指定多个
脚本会调用pandoc和xelatex把文件转为pdf,所以要安装好pandoc和xelate
为调整输出格式,使用了两个模板文件,一个是yaml的,一个是tex的。可以使用系统带的模板文件,也可以使用自定义的模板文件。要转换/data/abc.md时,模板文件使用顺序如下:(以tex举例,yaml顺序相同)
- /data/abc.md.tex
- /data/md2pdf.tex
- 软件包自带的md2pdf.tex,目录在md2pdf执行时会显示
模板文件如何修改请参考pandoc的相关文档。
yaml模板中可以有{filename}这样的替换,用来处理一些高级功能,如toc-title: {filename}指定标题显示文件名,目前支持的替换有:
- filename:文件名(不包含路径,不包含扩展名)
- createtime:生成pdf的时间,如2025-08-02 15:14:02
- createdate:生成pdf日期,如2025-08-02
pz7z8 给出这个包的一些简单介绍
比如这个包有哪些内容
smod 根据模板调整源代码
- 扫描 模板目录(默认是当前目录)下的模板文件 *.htm *.html
- 扫描 目标目录 (默认是web/static) 下的目标文件 *.htm *.html
- 如果目标文件中有
<!-- updatehtm xxxx.htm start -->或者是<!-- updatehtm xxxx.htm end -->这样的行,则认为是需要用相应模板中的内容替换 - 替换后如果内容有变化,则更新文件,如果没有变化,则不更新文件
用来批量替换文件里的一些固定内容,比如引用的模块
sshall 使用ssh跳转到预先设置好的目标机器
读入当前用户目录下的.sshall.json文件,这个文件基本格式如下:
[
{
"info": "服务器说明,会在右边显示,供选择服务器用",
"name": "服务器名称,会显示在标题处",
"class": "填写服务器的分类,会在左边显示所有的分类,选中分类后在右边显示这个分类中的所有服务器",
"host": "服务器地址,可以使用域名,也可以直接使用ip地址",
"port": "端口,一般设置为22"
},
]
可以把自己要连接的ssh机器登记在这个配置文件里,执行sshall就可以分类显示这些机器,按动分类左边的数字快捷键可以切换分类,按动机器左边的字母快捷键可以跳转到相应的机器。
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file pz7z8-0.1.14.tar.gz.
File metadata
- Download URL: pz7z8-0.1.14.tar.gz
- Upload date:
- Size: 16.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/4.0.2 CPython/3.11.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a6d41a3320d504021f155c926e432f6f1d9fdbd6e6a7ced85e3f218092999665
|
|
| MD5 |
ba65e346a072c1efa74c399bbc47f775
|
|
| BLAKE2b-256 |
b5e1d39d781fa1cbee1e0368c461d5ebf136e4c056b37e1444d90f80d9d118d8
|