SKILL HUB › 免费提示词 › 编程与开发 › Shell 脚本

Shell 脚本

🆓 免费编程与开发

Shell 脚本(免费)。编写自动化脚本:适用于文件处理、批量操作、系统管理、部署运维场景,解决「重复操作浪费时间、脚本写不对、不敢跑」的问题。用户只需提供相关信息,AI 即按内置提示词模板输出完整结果。

Shell 脚本(免费)

技能概述

编写自动化脚本:适用于文件处理、批量操作、系统管理、部署运维场景,解决「重复操作浪费时间、脚本写不对、不敢跑」的问题。最终目的:产出可直接套用的脚本编写提示词:用户只需描述自动化需求,AI 即输出可安全运行的脚本。本技能内置可直接套用的提示词模板,加载后 AI 按模板工作,无需额外配置。

适用场景

  • 编写自动化脚本:适用于文件处理、批量操作、系统管理、部署运维场景,解决「重复操作浪费时间、脚本写不对、不敢跑」的问题
  • 典型目的:产出可直接套用的脚本编写提示词:用户只需描述自动化需求,AI 即输出可安全运行的脚本

调用方式

当用户提出以下类型的需求时,激活本技能:

  • "请帮我Shell 脚本"
  • "用Shell 脚本的方法处理这个内容"
  • "按Shell 脚本模板生成"

激活后,按下方【内置提示词模板】执行:将用户提供的信息填入模板占位处(____),直接输出完整结果;用户未提供的信息保持占位并提示其补充。

内置提示词模板

【角色设定】
你是运维脚本专家,擅长编写安全、可读、可复用的自动化脚本。

【任务】
根据我的需求,帮我编写一个 Shell 脚本。

【我会提供的信息】
1. 脚本目标(要自动化什么操作):____
2. 运行环境(Linux/macOS/Windows 的 Git Bash 等):____
3. 输入与输出(处理什么文件/数据):____
4. 特殊要求(参数/日志/定时/错误处理):____
5. 已有脚本(如有,粘贴):____

【编写要求】
1. 输出完整脚本(可直接运行),含注释说明每段作用。
2. 安全第一:参数校验(空值/非法输入)、路径处理(带引号)、错误退出(set -e 或等价)、不删除无关文件。
3. 可读性:变量命名清晰、函数拆分、关键步骤注释。
4. 给使用说明:怎么运行、参数含义、预期效果。
5. 给测试建议:先在测试环境怎么验证(如 dry-run 模式)。

【输出格式】
一、完整脚本
二、使用说明(运行方式/参数)
三、安全说明(做了什么保护)
四、测试建议

请直接输出,不要询问多余信息;信息缺失处用「____」占位。

输出要求

  • 严格按模板指定的输出格式分节输出,不省略、不额外发挥。
  • 内容真实合规:不编造数据,不确定处标注「需核实」;涉及专业领域以专业来源为准。
  • 输出可直接复制使用,缺失信息用 ____ 占位并提示用户补充。

注意事项

  • 本技能为免费技能,无支付环节。
  • 如需该场景的高阶版提示词与更多玩法,可在本技能基础上要求 AI 深化;高阶版含五步工作流与合规自检。

风险提示

  • 本工具输出结果仅供参考,不构成专业意见或收益承诺;重要决策请自行核实并判断。
  • 免费工具不提供持续服务保证,具体以 SKILLHub 平台规则为准。

🚀 高阶用法与进阶技巧

1. 处理多个文件的批量重命名

高级用法: 用户需要将一个目录下的所有 .txt 文件重命名为 prefix_原文件名.txt,并添加时间戳作为前缀。

参数/步骤:

  • 脚本目标:批量重命名 .txt 文件
  • 运行环境:Linux/macOS
  • 输入与输出:处理当前目录下的所有 .txt 文件,并生成新的文件名
  • 特殊要求:添加时间戳前缀,保持原有文件内容不变

组合技巧: 使用 for 循环遍历目录中的每个 .txt 文件,并使用 mv 命令进行重命名。时间戳可以通过 date 命令生成。

示例脚本:

#!/bin/bash

# 获取当前日期和时间作为前缀
timestamp=$(date +%Y%m%d%H%M%S)

# 遍历当前目录下的所有 .txt 文件
for file in *.txt; do
  # 重命名文件,添加前缀
  mv "$file" "${timestamp}_prefix_$file"
done

echo "批量重命名完成!"

2. 定时执行脚本并发送邮件通知

高级用法: 用户需要编写一个定时任务,每天凌晨 3 点执行某个脚本,并将执行结果通过邮件发送给指定的管理员。

参数/步骤:

  • 脚本目标:定时执行脚本并发送邮件
  • 运行环境:Linux
  • 输入与输出:执行特定脚本,生成日志文件
  • 特殊要求:定时任务、邮件通知

组合技巧: 使用 cron 设置定时任务,并结合 mail 命令发送邮件。脚本执行结果可以通过重定向保存到日志文件中。

示例脚本:

#!/bin/bash

# 执行目标脚本并生成日志文件
./target_script.sh > /var/log/script_output.log 2>&1

# 发送邮件通知
echo "脚本执行完成,请查看日志文件:/var/log/script_output.log" | mail -s "Script Execution Result" [告警接收邮箱]

echo "定时任务已执行并发送邮件通知!"

3. 自动化备份与压缩

高级用法: 用户需要编写一个自动化脚本,定期备份指定目录下的文件,并将备份文件压缩成 .tar.gz 格式。

参数/步骤:

  • 脚本目标:自动备份并压缩文件
  • 运行环境:Linux/macOS
  • 输入与输出:备份并压缩指定目录下的文件
  • 特殊要求:定期执行、压缩格式

组合技巧: 使用 tar 命令进行文件压缩,并结合 cron 设置定时任务。备份文件可以命名为包含日期的文件名,以便区分不同版本。

示例脚本:

#!/bin/bash

# 获取当前日期作为备份文件名的一部分
backup_date=$(date +%Y%m%d)

# 备份并压缩指定目录下的文件
tar -czf "/path/to/backup_${backup_date}.tar.gz" /path/to/source_directory

echo "备份并压缩完成!"

4. 监控系统资源并发送警报

高级用法: 用户需要编写一个脚本,监控服务器的 CPU 和内存使用情况,并在超过阈值时通过邮件发送警报。

参数/步骤:

  • 脚本目标:监控系统资源并发送警报
  • 运行环境:Linux/macOS
  • 输入与输出:监控 CPU 和内存使用情况
  • 特殊要求:邮件通知、阈值设置

组合技巧: 使用 top 或 free 命令获取系统资源使用情况,并结合 mail 命令发送警报。可以设置不同的阈值来触发警报。

示例脚本:

#!/bin/bash

# 获取 CPU 和内存使用情况
cpu_usage=$(top -bn1 | grep "Cpu(s)" | sed "s/.*, *\([0-9.]*\)%* id.*/\1/" | awk '{print 100 - $1"%"}')
memory_usage=$(free -m | awk 'NR==2{printf "%.2f%%", $3*100/$2 }')

# 设置阈值
cpu_threshold=80
memory_threshold=80

# 检查 CPU 和内存使用情况,并发送邮件警报
if (( $(echo "$cpu_usage > $cpu_threshold" | bc -l) )); then
  echo "CPU 使用率超过阈值:$cpu_usage" | mail -s "CPU Usage Alert" [告警接收邮箱]
fi

if (( $(echo "$memory_usage > $memory_threshold" | bc -l) )); then
  echo "内存使用率超过阈值:$memory_usage" | mail -s "Memory Usage Alert" [告警接收邮箱]
fi

echo "系统资源监控完成!"

📋 实战案例(3个真实场景)

案例一:批量重命名文件

场景描述: 用户需要将一个目录下的所有 .txt 文件重命名为 prefix_原文件名.txt,并添加时间戳作为前缀。

输入示例:

脚本目标:批量重命名 .txt 文件
运行环境:Linux/macOS
输入与输出:处理当前目录下的所有 .txt 文件,并生成新的文件名
特殊要求:添加时间戳前缀,保持原有文件内容不变

输出要点:

  • 使用 for 循环遍历目录中的每个 .txt 文件。
  • 使用 mv 命令进行重命名,添加时间戳前缀。

案例二:定时执行脚本并发送邮件通知

场景描述: 用户需要编写一个定时任务,每天凌晨 3 点执行某个脚本,并将执行结果通过邮件发送给指定的管理员。

输入示例:

脚本目标:定时执行脚本并发送邮件
运行环境:Linux
输入与输出:执行特定脚本,生成日志文件
特殊要求:定时任务、邮件通知

输出要点:

  • 使用 cron 设置定时任务。
  • 执行目标脚本并将结果保存到日志文件中。
  • 使用 mail 命令发送邮件通知。

案例三:自动化备份与压缩

场景描述: 用户需要编写一个自动化脚本,定期备份指定目录下的文件,并将备份文件压缩成 .tar.gz 格式。

输入示例:

脚本目标:自动备份并压缩文件
运行环境:Linux/macOS
输入与输出:备份并压缩指定目录下的文件
特殊要求:定期执行、压缩格式

输出要点:

  • 使用 tar 命令进行文件压缩。
  • 设置定时任务,定期执行脚本。
  • 备份文件命名为包含日期的文件名。

💰 价值对比(为什么这个工具值得用)

具体优势:

  1. 提升效率:
  • 自动化生成脚本,节省编写和调试时间,提高工作效率。
  • 减少重复操作,避免手动错误,确保脚本的准确性和可靠性。
  1. 安全可靠:
  • 内置的安全检查机制,如参数校验、路径处理和错误退出,确保脚本运行的安全性。
  • 提供详细的使用说明和测试建议,帮助用户更好地理解和验证脚本功能。
  1. 灵活性高:
  • 支持多种运行环境(Linux/macOS/Windows 的 Git Bash 等),适用于不同场景的需求。
  • 可定制的提示词模板,允许用户根据具体需求进行调整和扩展。

🎯 使用场景与适用人群

适用人群:

  1. 运维工程师:
  • 需要编写自动化脚本进行系统管理、部署运维任务。
  • 想要提高工作效率,减少重复操作的时间浪费。
  1. 开发人员:
  • 在项目中需要批量处理文件、生成日志等任务。
  • 希望通过工具自动生成脚本,减少手动编写的工作量。
  1. IT 管理员:
  • 需要定期备份数据并进行压缩存储。
  • 想要通过邮件通知监控系统资源使用情况。

使用场景:

  1. 文件处理:
  • 批量重命名、移动、删除文件。
  • 生成日志文件并进行归档。
  1. 批量操作:
  • 定时执行特定任务,如数据库备份、数据同步等。
  • 自动化脚本的执行和监控。
  1. 系统管理:
  • 监控服务器资源使用情况,发送警报通知。
  • 自动化软件安装、配置和更新。
  1. 部署运维:
  • 编写自动化部署脚本,减少人工干预。
  • 实现持续集成/持续部署(CI/CD)流程的自动化。

相关推荐

分类:编程与开发  ·  适合人群:开发者/创业者/企业IT  ·  预期效果:提升开发效率/降低技术门槛  ·  标签:—