当前位置: 首页 > news >正文

常用开发脚本工具推荐

常用开发脚本工具推荐(按场景分类)

1. 文件与目录处理

工具名称简介语言
fd更快更现代的 find 替代品,支持正则、并发搜索Rust(可直接脚本调用)
bat代替 cat,带语法高亮和行号Rust
tree目录结构可视化(跨平台)Shell
duf文件磁盘使用分析,比 du 更直观Shell/C

实用 Shell 脚本举例:

# 查找最近7天修改的文件
find ./ -type f -mtime -7# 批量压缩文件
for f in *.txt; do gzip "$f"; done

2. Python 实用脚本库

名称作用
rich美观打印、进度条、日志增强
argparse命令行参数解析
fire / click快速创建 CLI 工具
loguru强大的日志记录替代 logging
watchdog文件夹变更监听器(自动构建等)
pandas数据处理神器,适合 CSV/Excel
open3d点云、Mesh 可视化与处理

实用脚本示例:

# 自动清理超过7天的临时文件
import os, time
for f in os.listdir('/tmp'):path = f'/tmp/{f}'if time.time() - os.path.getmtime(path) > 7*86400:os.remove(path)

3. Git 脚本工具

工具用法
pre-commit自动执行格式化、lint、检查
git-quick-stats图表形式分析 git 活动
.git-hooks自定义脚本(提交检查、自动推送等)

Git Hook 示例:自动格式化代码后提交

# .git/hooks/pre-commit
black . || exit 1

4. 系统监控 / 网络工具

工具功能
htop高级进程管理工具
iotop磁盘读写速率监控
iftop实时流量监控
ncdu磁盘空间交互式浏览

自定义命令行工具模板(Python + Fire)

# tools.py
import fireclass Tools:def clean(self, path='.', days=7):'''删除 N 天前文件'''import os, timefor f in os.listdir(path):p = os.path.join(path, f)if os.path.isfile(p) and time.time() - os.path.getmtime(p) > days*86400:os.remove(p)print(f"Deleted: {p}")def info(self):'''打印系统信息'''import platformprint(platform.uname())if __name__ == '__main__':fire.Fire(Tools)

执行命令示例:

python tools.py clean --days=3
python tools.py info

http://www.xdnf.cn/news/227611.html

相关文章:

  • java网络原理5
  • 【C++】数据结构 九种排序算法的实现
  • python对接马来西亚股票完整代码
  • 微前端框架选型指南
  • Go并发控制模式:基于Channel的实践与优化
  • Github 2025-04-30 C开源项目日报 Top10
  • 3dgs渲染 Nvdiffrast
  • getattr 的作用
  • 6.应用层
  • 搭建PCDN大节点,服务器该怎么配
  • Vue3 后台管理系统模板
  • redis 数据类型新手练习系列——List类型
  • 驱动开发系列54 - Linux Graphics QXL显卡驱动代码分析(一)设备初始化
  • 微信小程序 XSS 防护知识整理
  • HTML ASCII 编码详解
  • 遗传算法(Genetic Algorithm,GA)
  • 5、SpringBoot整合RabbitMQ
  • 39.RocketMQ高性能核心原理与源码架构剖析
  • iview表单提交验证时,出现空值参数被过滤掉不提交的问题解决
  • 大连理工大学选修课——机器学习笔记(2):机器学习的一般原理
  • 智能检索革命全景透视——基于《搜索引擎信息检索困境破解体系》深度拆解
  • 数据结构篇:线性表的另一表达—链表之单链表(下篇)
  • 宇树科技开启“人形机器人格斗盛宴”
  • LeetCode 2302.统计得分小于 K 的子数组数目:滑动窗口(不需要前缀和)
  • Java架构师深度技术面试:从核心基础到分布式架构全解析
  • Milvus(11):动态字段、可归零和默认值
  • 基于开源AI智能名片链动2+1模式S2B2C商城小程序的私域电商与微商融合创新研究
  • 基于Docker的Elasticsearch ARM64架构镜像构建实践
  • vue 和 html 的区别
  • 20250430在ubuntu14.04.6系统上查看系统实时网速