SuperAPI AI 工具集

shell-scripting

编程与开发

查看项目

更新于 10-15 07:55

技能介绍

用途

本技能面向 Shell 脚本编写,提供 bash/zsh 的最佳实践与常用模式。当需要编写自动化脚本、创建 CLI 工具、执行系统管理任务、编写构建与部署脚本、进行日志处理与分析、文件操作与批量处理,或设置 cron 定时任务时,可使用本技能。

主要能力

  • 脚本结构:提供标准模板,包含 shebang、脚本说明注释、set -euo pipefail、IFS 设置、常量定义(SCRIPT_DIR、SCRIPT_NAME)、默认值、usage/log/error 函数以及 main 入口。
  • 错误处理:介绍 set -e、set -u、set -o pipefail、set -x 等选项;使用 trap 进行清理并处理 INT/TERM 信号;提供命令存在性、文件、目录、变量及退出状态等检查模式。
  • 变量与替换:涵盖默认值展开(:-、:=、:+、:?)、字符串前后缀删除与替换、长度获取;数组与关联数组的声明、访问、遍历、追加及键存在性检查。
  • 控制流与循环:字符串/数值比较、文件测试、逻辑运算符;for、while、进程替换、C 风格 for 循环。
  • 输入输出:用户输入、隐藏密码、超时读取、逐行读文件;stdout/stderr 重定向、丢弃输出、tee。
  • 文本处理:find 结合 grep、CSV 逐行处理、jq 处理 JSON、awk 与 sed 常用一行命令。
  • 最佳实践:给出应做与不应做的清单,如引用变量、使用 [[ ]]、使用 $(command)、检查返回值、使用 readonly 与 local、提供 --help、使用有意义的退出码;避免解析 ls 输出、对不可信输入使用 eval、假设路径无空格、忽略 shellcheck 警告、编写单一巨型脚本。

使用方式

资料以技能文档形式提供,包含可直接参考的代码模板与示例片段,例如脚本模板、错误处理模式、变量展开语法、数组操作、条件与循环写法、输入输出重定向以及文本处理一行命令。文档还列出参考文件 references/one_liners.md,用于查阅实用一行命令。

适用场景

自动化脚本、CLI 工具、系统管理、构建与部署、日志处理与分析、文件操作与批量处理、cron 定时任务。

限制

资料未提供安装命令、运行环境要求、版本兼容性、收费或价格信息,也未说明具体平台支持范围,这些内容暂未提供。