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

老年人记不住命令?ShellGPT 是你的终端外挂

前言

ShellGPT = 命令行 × AI。无需记忆复杂参数,一句话生成精准命令;无需手动解析输出,管道直接丢给 AI 分析。本文详解安装配置、模型选择(白嫖阿里云)、三种使用模式(简洁/交互/会话),以及 netstat、kubectl、git 等实战场景。适合所有想在终端里"偷懒"的开发者和运维。

安装

安装非常的简单粗暴,一条命令即可

pip3 install shell-gpt

选择模型

1)基于白piao的精神,选择了千问,至于原因:

shell-gpt_1

阿里云百炼 ,低门槛快速入门

2)确定好平台之后,登陆选择模型,随便选一个即可,这里笔者选择了Qwen3.5-Plus

shell-gpt_2

3)点击模型查看详情,最主要的是拿到api key

shell-gpt_3

4)生成api即可,将其按照下列格式准备着

export OPENAI_API_KEY="sk-***********************"
export API_BASE_URL="https://dashscope.aliyuncs.com/compatible-mode/v1"
export DEFAULT_MODEL="qwen-plus"
  • OPENAI_API_KEY,就是刚才生成的
  • API_BASE_URL,这是api地址,在文档中也可以找到
  • DEFAULT_MODEL,默认使用的模型

初次使用

1)先配置环境变量:

export OPENAI_API_KEY="sk-***********************"
export API_BASE_URL="https://dashscope.aliyuncs.com/compatible-mode/v1"
export DEFAULT_MODEL="qwen-plus"

2)hello world

> sgpt '你是谁?'
我是 ShellGPT,你的编程与系统管理助手。我专为 Linux/Debian GNU/Linux 13(代号 trixie)环境优化,熟悉 zsh
shell、包管理(apt)、服务管理(systemd)、脚本编写及常见运维任务。我能帮你调试命令、解释错误、生成安全的 Bash/Zsh 脚本、配置服务或排查网络/权限问题。所有响应力求简洁(约 100 字),并用 Markdown
增强可读性(如 code、加粗、列表等)。数据仅保留在当前对话中,不持久化。需要执行具体任务?比如:• ✅ sudo apt update 后出错?• ✅ 想写个自动备份脚本?• ✅ systemctl status nginx 显示 failed?随时告诉我 👇

日常使用

1)日常中工作中经常容易迷惑的命令:find,找出目录下1天前修改的文件?找出目录下1天内修改的文件?

这种问题使用sgpt简直不要太容易

> sgpt '找出当前目录下1天前修改的文件'
在当前目录下查找 1天前修改 的文件(即修改时间恰好为24小时前),可使用:find . -maxdepth 1 -type f -mtime 1⚠️ 注意:-mtime 1 表示“恰好 24–48 小时前”(即 24 ≤ 修改时间 < 48 小时),这是 find 的标准行为(按完整天数向下取整)。若需精确到1天(±几分钟),用 -mmin 更准:find . -maxdepth 1 -type f -mmin +1439 -mmin -1441(≈24h = 1440 分钟;+1439 表示 >1439min,-1441 表示 <1441min,覆盖 ±1 分钟误差)排除隐藏文件?加 -not -name ".*"。需要递归子目录?删掉 -maxdepth 1。

2)我只想知道命令是什么,不想听到你bb这么多没用的消息

加上-s参数即可

> sgpt -s '找出当前目录下1天前修改的文件'
find . -type f -mtime 1
[E]xecute, [M]odify, [D]escribe, [A]bort:

还贴心的询问要不要执行,敲e立即执行,马上就将所有的1天前修改的文件列出来

这简直就是老年人记不住命令的福音啊

交互模式

进入一个完全交互式的一问一答会话环境,并且上下文感知

> sgpt --repl temp
Entering REPL mode, press Ctrl+C to exit.
>>> 当前操作系统是什么
...
>>> 当前内核的版本是什么
...

交互模式也可以进入之前的shell模式,即交互执行模式,sgpt回答给出命令之后,可以选择立即执行

> sgpt -s --repl work-cmd
Entering shell REPL mode, type [e] to execute commands or [d] to describe the commands, press Ctrl+C to exit.
>>> 找出/data目录下超过一天的文件
find /data -type f -mtime +1
>>> e/data/test/1
/data/test/2

会话模式

该模式最大的特点就是内容记录下来,当还需要使用该上下文的时候,可以继续询问

> sgpt --chat find-command "找出/data下的所有的log结尾的文件"
...
> sgpt --chat find-command "再找出1天前的"

列出所有会话:

> sgpt --list-chats
/tmp/chat_cache/find-command

查看会话内容:

> sgpt --show-chat find-command

注:在交互--repl模式的内容也能够看到

交互模式与会话模式的区别

乍一看两个模式非常相似,其实也有差别

  • --chat 会话模式:
    • 想快速查询信息,过一段时间又需要使用该上下文
    • 在写脚本中调用
  • --repl 交互模式:
    • 要进行深度对话/调试
    • 需要连续问很多相关问题
    • 想保持专注不被打断
    • 在开发过程中实时咨询
  • chat模式与repl模式也是可以互相进入的

这里据一个例子让大家更加清晰的理解

1)早上日常巡检系统,看看目录下有哪些文件

> sgpt --chat monday '查看/data/目录下有多少个文件'

2)中午的时候开始深度与sgpt交流一个关于kafka的问题

> sgpt --repl kafka-topic

3)下午的时候想起来上午巡检的内容,还有个地方没做完:有多少文件是1天前修改的,这时候继续上午巡检的上下文

> sgpt --chat monday '有那些文件是1天前修改的'

4)快要下班的时候再统计,这次为了专注下班之前完成,进入了--repl交互模式,之前会话模式的内容也能够看到

> sgpt --repl monday
... # 显示之前的上下文>>> 把1天前修改的文件全部删掉
...

奇技淫巧

1)netstat -nlpt | sgpt '监听了那些端口,并且把进程名打印出来'

> sudo netstat -nlpt | sgpt '监听了哪些端口,并且把进程名打印出来'
以下是监听的端口及其对应进程(去重合并 IPv4/IPv6):• 10887/tcp → trojan• 16067/tcp → sunloginclient• 631/tcp & 631/tcp6 → cupsd (IPP printing service)所有服务均绑定本地(127.0.0.1 或 ::1),除 trojan(0.0.0.0:10887)外,其余均不对外网开放。建议用 sudo ss -tulpn | grep :<PORT> 验证详情。

2)kubectl describe pod xxx | sgpt "解释这里的异常"

3)git diff | sgpt "帮我 review 这段改动"

总结

sgpt极大的增强了日常使用命令行的效率,并且也在重构命令行使用的方式

联系我

  • 联系我,做深入的交流

至此,本文结束
在下才疏学浅,有撒汤漏水的,请各位不吝赐教...

http://www.jsqmd.com/news/427387/

相关文章:

  • 腾讯电子签(第三方应用集成+测试环境)
  • 文墨共鸣大模型在卷积神经网络(CNN)图像描述任务中的融合应用
  • GTE-large Web服务高可用实践:Nginx负载均衡+多实例部署+故障自动切换
  • 2026年手提袋印刷哪家好?一份扎实的实战经验分享与工厂榜单 - 企师傅推荐官
  • 2026年3月防火喷塑电缆桥架厂家推荐榜,彰显国产工艺实力 - 品牌鉴赏师
  • Baichuan-M2-32B-GPTQ-Int4部署指南:Java后端服务集成
  • Wan2.1 VAE生成复古游戏像素风艺术图效果鉴赏
  • cv_unet_image-colorization行业解决方案:为在线教育平台提供作业批改辅助
  • 人工智能应用- 检测炭疽芽孢:01.炭疽病与炭疽杆菌
  • 视觉替代编码器测速度,不用脉冲计数,靠图像跟踪转速。
  • UDOP-large快速上手:无需代码,Web界面直接分析文档布局
  • 人工智能应用- 检测炭疽芽孢:02. 可怕的炭疽感染
  • 视觉判断人的疲劳程度,不靠人脸关键点,靠肤色纹理。
  • 多旋翼无人机横向飞行的时间最优轨迹规划研究(Matlab代码实现)
  • Lychee-rerank-mm在新闻推荐系统中的应用:图文内容精准匹配实践
  • SpringBoot+Vue 乡村政务办公系统平台完整项目源码+SQL脚本+接口文档【Java Web毕设】
  • 降重省心了!圈粉无数的降AI率软件 —— 千笔·专业降AIGC智能体
  • 卡证检测矫正模型企业应用:电力公司安全准入证件AI核验前置模块
  • .net 面试题整理
  • 基于SSM+VUE的体育用品库存管理系统[SSM]-计算机毕业设计源码+LW文档
  • DAMOYOLO-S入门指南:从零开始搭建物体识别系统
  • 基于SSM+VUE的停车位租赁管理系统[SSM]-计算机毕业设计源码+LW文档
  • python基于flask的演唱会售票系统设计与实现_7v12j9v6
  • 西恩士清洁度检测设备:为何它是新能源与军工领域的“隐形冠军”? - 技术权威说
  • EVA-01效果展示:暴走白昼UI下Qwen2.5-VL-7B对表格图像的结构化信息抽取效果
  • 2026年网站建设的完整流程和步骤,新手必看
  • 2026年3月镀锌电缆桥架厂家推荐榜,彰显国产工艺实力 - 品牌鉴赏师
  • SenseVoice-Small语音识别模型ONNX导出全流程:从HuggingFace到推理部署
  • Java Web 影城会员管理系统系统源码-SpringBoot2+Vue3+MyBatis-Plus+MySQL8.0【含文档】
  • CogVideoX-2b开发者实操:通过API批量提交文案生成视频队列