技术文摘
11 个实用的 Python 与 Shell 即用脚本实例
11 个实用的 Python 与 Shell 即用脚本实例
在日常的编程和系统管理中,Python 和 Shell 脚本发挥着重要作用。它们能够帮助我们高效地完成各种任务,节省时间和精力。以下是 11 个实用的脚本实例,希望能为您的工作带来便利。
1. 文件批量重命名
在 Python 中,可以使用 os 模块实现文件的批量重命名。例如,将指定文件夹下所有以 .txt 结尾的文件重命名为 .log 。
import os
folder_path = "your_folder_path"
for filename in os.listdir(folder_path):
if filename.endswith(".txt"):
new_name = filename.replace(".txt", ".log")
os.rename(os.path.join(folder_path, filename), os.path.join(folder_path, new_name))
2. 目录内容统计
使用 Shell 脚本可以快速统计指定目录下的文件和子目录数量。
#!/bin/bash
dir_path="your_directory_path"
file_count=$(find "$dir_path" -type f | wc -l)
dir_count=$(find "$dir_path" -type d | wc -l)
echo "文件数量: $file_count"
echo "目录数量: $dir_count"
3. 文本数据提取
Python 中的正则表达式能够从大量文本中提取所需信息。比如从网页源码中提取所有的邮箱地址。
import re
text = "your_text"
emails = re.findall(r'\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}\b', text)
for email in emails:
print(email)
4. 系统信息监控
通过 Shell 脚本监控系统的 CPU 使用率、内存使用情况等。
#!/bin/bash
cpu_usage=$(top -bn1 | grep "Cpu(s)" | awk '{print $2 + $4}')
mem_usage=$(free -m | awk 'NR==2{print $3/$2 * 100}')
echo "CPU 使用率: $cpu_usage%"
echo "内存使用率: $mem_usage%"
5. 数据备份
使用 Python 实现定时数据备份,将重要文件复制到指定的备份目录。
import shutil
import time
source_path = "your_source_path"
backup_path = "your_backup_path"
while True:
shutil.copytree(source_path, backup_path + time.strftime("%Y%m%d%H%M%S"))
time.sleep(3600) # 每小时备份一次
6. 网络端口扫描
在 Python 中借助第三方库 socket 实现简单的网络端口扫描。
import socket
target_ip = "your_target_ip"
for port in range(1, 65535):
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
result = sock.connect_ex((target_ip, port))
if result == 0:
print(f"端口 {port} 开放")
sock.close()
7. 日志分析
使用 Python 对大量的日志文件进行分析,提取关键信息并生成报告。
8. 进程管理
Shell 脚本可以监控进程状态,如查看是否有特定进程在运行,若没有则启动。
#!/bin/bash
process_name="your_process_name"
if pgrep -f "$process_name" > /dev/null; then
echo "$process_name 正在运行"
else
echo "$process_name 未运行,正在启动..."
# 启动进程的命令
fi
9. 数据格式转换
将 CSV 格式的数据转换为 JSON 格式,方便数据处理和传输。
import csv
import json
with open('your_csv_file.csv', 'r') as csv_file:
reader = csv.DictReader(csv_file)
data = [row for row in reader]
with open('your_json_file.json', 'w') as json_file:
json.dump(data, json_file, indent=4)
10. 定时任务执行
通过 Shell 脚本设置定时任务,如每天凌晨执行某个脚本。
crontab -e
0 0 * * * /path/to/your_script.sh
11. 图片处理
使用 Python 的图像处理库,如 Pillow,实现图片的裁剪、缩放、转换等操作。
这些实用的 Python 与 Shell 脚本实例能够在不同的场景中发挥作用,提高工作效率。您可以根据实际需求对它们进行修改和扩展,以满足更多的个性化需求。
TAGS: Python 脚本实例 Shell 脚本实例 实用脚本技巧 即用型脚本
- FabricJS中设置圆的X轴倾斜角度的方法
- JavaScript日期时间转MySQL日期时间的方法
- ReactNative中显示进度条的方法
- CSS3入门攻略:助你从菜鸟变身高手
- 掌握Vue 3片段小节(Fragment)特性,优化页面渲染效率
- CSS3 flex属性实现网页布局层叠效果的方法
- 深入了解CSS伪元素
- CSS中如何用 @counter-style 规则自定义列表项
- CSS3零基础入门:核心技术逐步精通
- JavaScript 如何返回 HTML 或构建 HTML
- FabricJS 中如何设置画布上选择区域的颜色
- 如何在HTML中显示文本区域的可见宽度
- HTML 中怎样让元素在页面加载时自动获取焦点
- FabricJS 中如何裁剪克隆图像的顶部偏移
- CSS 中的语速属性