- 先写一个能跑的脚本写 Shell 脚本不需要先学一门新语言:你每天在终端敲的命令,换个文件存起来就是脚本。新建一个文件 deploy.sh,第一行写 #!/bin/bash,下面按顺序写命令,保存后 chmod +x deploy.sh,再 ./deploy.sh 就能跑。这一行叫 shebang,告诉系统用哪个解释器执行这个文件;丢了它,系统会用默认 shell 跑,行为可能不一样。变量:... 先写一个能跑的脚本写 Shell 脚本不需要先学一门新语言:你每天在终端敲的命令,换个文件存起来就是脚本。新建一个文件 deploy.sh,第一行写 #!/bin/bash,下面按顺序写命令,保存后 chmod +x deploy.sh,再 ./deploy.sh 就能跑。这一行叫 shebang,告诉系统用哪个解释器执行这个文件;丢了它,系统会用默认 shell 跑,行为可能不一样。变量:...
- Bash 的 $(...) 会执行括号里的命令,再把标准输出作为替换结果。不过,它会移除输出末尾的所有换行符;输出中间的换行则会保留。这在读取配置或一行命令结果时很方便,但如果需要逐字节保存文件内容,就容易让人误以为数据没有变化。 看一个最小例子value=$(printf 'hello\n\n')printf '<%s>\n' "$value"输出是 <hello>:原本末尾的两个换行都没... Bash 的 $(...) 会执行括号里的命令,再把标准输出作为替换结果。不过,它会移除输出末尾的所有换行符;输出中间的换行则会保留。这在读取配置或一行命令结果时很方便,但如果需要逐字节保存文件内容,就容易让人误以为数据没有变化。 看一个最小例子value=$(printf 'hello\n\n')printf '<%s>\n' "$value"输出是 <hello>:原本末尾的两个换行都没...
- 背景从开发者成长中心点「每日体验 AI DevSpace」的「去完成」后,打开的 DevSpace 地址带 dc、dc_sign 参数,会先走一遍「正在配置实操环境」流程,约 1~2 分钟到 100%,随后进入工作台,右上角显示剩余时长 3 小时。 实测:三条命令确认沙箱真的可用新建会话时 CWD 默认 /root/workspace,确认后一句话下发指令:请用 AI Shell 执行三条... 背景从开发者成长中心点「每日体验 AI DevSpace」的「去完成」后,打开的 DevSpace 地址带 dc、dc_sign 参数,会先走一遍「正在配置实操环境」流程,约 1~2 分钟到 100%,随后进入工作台,右上角显示剩余时长 3 小时。 实测:三条命令确认沙箱真的可用新建会话时 CWD 默认 /root/workspace,确认后一句话下发指令:请用 AI Shell 执行三条...
- 如果你每天上服务器都要敲同一串命令,比如先 df -h 看磁盘、再 systemctl status 看服务、最后备份一次数据库,那这些命令就该写进脚本里,不该天天靠手敲。Shell 脚本说白了就是一个文本文件,里面按顺序写着你要执行的命令,执行它就等于你亲手把这些命令一条条敲了一遍,只是不用再敲第二遍。第一步,写第一个脚本。新建一个文件 check.sh,第一行写 #!/bin/bash,... 如果你每天上服务器都要敲同一串命令,比如先 df -h 看磁盘、再 systemctl status 看服务、最后备份一次数据库,那这些命令就该写进脚本里,不该天天靠手敲。Shell 脚本说白了就是一个文本文件,里面按顺序写着你要执行的命令,执行它就等于你亲手把这些命令一条条敲了一遍,只是不用再敲第二遍。第一步,写第一个脚本。新建一个文件 check.sh,第一行写 #!/bin/bash,...
- 写运维小脚本时,默认 bash 行为很宽容:命令失败还会继续跑,未定义变量当成空字符串。线上容易变成「看起来执行完了,其实中间已经挂了」。 一行习惯脚本开头加上:set -euo pipefail含义大致是:-e:任一命令非零退出就停-u:用到未定义变量直接报错-o pipefail:管道里任一环失败,整段算失败 什么时候要小心需要「失败也继续」的步骤,显式写:some_cmd || tru... 写运维小脚本时,默认 bash 行为很宽容:命令失败还会继续跑,未定义变量当成空字符串。线上容易变成「看起来执行完了,其实中间已经挂了」。 一行习惯脚本开头加上:set -euo pipefail含义大致是:-e:任一命令非零退出就停-u:用到未定义变量直接报错-o pipefail:管道里任一环失败,整段算失败 什么时候要小心需要「失败也继续」的步骤,显式写:some_cmd || tru...
- 从成长中心「去完成」进入 AI DevSpace,选体验版起环境,在 AI Shell 发一条具体开发指令并等回复,才是任务认定的「体验完成」。文中记录入口参数、规格选择、指令写法和三个完成信号,以及几个容易白忙的细节。 从成长中心「去完成」进入 AI DevSpace,选体验版起环境,在 AI Shell 发一条具体开发指令并等回复,才是任务认定的「体验完成」。文中记录入口参数、规格选择、指令写法和三个完成信号,以及几个容易白忙的细节。
- 日志动辄几万行,本文介绍 Shell 三剑客 grep、sed、awk 的入门用法:grep 按关键词过滤并查看上下文,sed 批量替换与按行处理,awk 按列统计与求和,并给出一条串联排障的管道示例。 日志动辄几万行,本文介绍 Shell 三剑客 grep、sed、awk 的入门用法:grep 按关键词过滤并查看上下文,sed 批量替换与按行处理,awk 按列统计与求和,并给出一条串联排障的管道示例。
- 写运维脚本时最容易踩的坑,是脚本只能跑一次:第一次成功,第二次就报错,或者重复执行产生重复结果。幂等性就是让脚本无论执行一次还是多次,最终结果都一样。下面是几个在实践中真正管用的做法。一、先判断,再执行不要假设目标状态不存在。创建目录前先检查:test -d /data/app || mkdir -p /data/app。写配置文件前先判断内容是否已存在,存在就跳过。把“如果已经是想要的状态... 写运维脚本时最容易踩的坑,是脚本只能跑一次:第一次成功,第二次就报错,或者重复执行产生重复结果。幂等性就是让脚本无论执行一次还是多次,最终结果都一样。下面是几个在实践中真正管用的做法。一、先判断,再执行不要假设目标状态不存在。创建目录前先检查:test -d /data/app || mkdir -p /data/app。写配置文件前先判断内容是否已存在,存在就跳过。把“如果已经是想要的状态...
- Prometheus 加 blackbox_exporter、云监控的可用性探测,都比手写脚本完善。但很多团队的真实需求只是“十几个接口、每五分钟看一次、挂了在群里说一声”。为这点事搭一套采集、存储和 Prometheus 加 blackbox_exporter、云监控的可用性探测,都比手写脚本完善。但很多团队的真实需求只是“十几个接口、每五分钟看一次、挂了在群里说一声”。为这点事搭一套采集、存储和
- awk 输出的浮点数默认是 %.6g:一次优选 IP 排名全乱的排查 现象2026 年 10 月 29 日,在做 Cloudflare 优选 IP(新加坡节点)排名时,脚本算出的综合分明明是几千万量级,sort -n 排出来的顺序却全乱了:一个 4.13e+07 分的 IP 排在了 9.8e+06 分的 IP 前面,而按数值算前者应该是后者的 4 倍多。排名结果直接进了当天的优选名单,差点... awk 输出的浮点数默认是 %.6g:一次优选 IP 排名全乱的排查 现象2026 年 10 月 29 日,在做 Cloudflare 优选 IP(新加坡节点)排名时,脚本算出的综合分明明是几千万量级,sort -n 排出来的顺序却全乱了:一个 4.13e+07 分的 IP 排在了 9.8e+06 分的 IP 前面,而按数值算前者应该是后者的 4 倍多。排名结果直接进了当天的优选名单,差点...
- 华为云 AI DevSpace 体验版实战记录:从实践中心入口进入容器,用 AI Shell 在真实 Linux 沙箱中执行 echo/pwd/date 并查看返回结果。 华为云 AI DevSpace 体验版实战记录:从实践中心入口进入容器,用 AI Shell 在真实 Linux 沙箱中执行 echo/pwd/date 并查看返回结果。
- 对于刚接触 Linux 的开发者来说,Shell 脚本往往是第一件趁手的自动化工具:它不需要编译,不依赖框架,几行命令就能把重复的手工操作变成可重复执行的程序。本文从第一个脚本写起,聊聊变量、判断、循环、函数这些基本功,再落到备份、巡检这类真实的运维场景。一、写出第一个脚本新建文件 hello.sh,第一行写上 #!/bin/bash,这一行叫作 shebang,告诉系统用哪个解释器来执行脚... 对于刚接触 Linux 的开发者来说,Shell 脚本往往是第一件趁手的自动化工具:它不需要编译,不依赖框架,几行命令就能把重复的手工操作变成可重复执行的程序。本文从第一个脚本写起,聊聊变量、判断、循环、函数这些基本功,再落到备份、巡检这类真实的运维场景。一、写出第一个脚本新建文件 hello.sh,第一行写上 #!/bin/bash,这一行叫作 shebang,告诉系统用哪个解释器来执行脚...
- 备份这件事,平时没人想起它,出问题时却能决定一个晚上是加班还是安心睡觉。很多新手第一次写备份脚本,都是直接敲一行 tar 命令了事;等到真正需要恢复时,才发现备份文件不知道去哪了、旧备份把磁盘塞满了、脚本半夜报错也没人知道。本文就用一个可复用的 Bash 备份脚本,把这些坑一次填平。 一、先想清楚:备份脚本要解决什么问题一个能长期跑下去的备份脚本,至少要做到四件事:第一,备份内容可配置,换一... 备份这件事,平时没人想起它,出问题时却能决定一个晚上是加班还是安心睡觉。很多新手第一次写备份脚本,都是直接敲一行 tar 命令了事;等到真正需要恢复时,才发现备份文件不知道去哪了、旧备份把磁盘塞满了、脚本半夜报错也没人知道。本文就用一个可复用的 Bash 备份脚本,把这些坑一次填平。 一、先想清楚:备份脚本要解决什么问题一个能长期跑下去的备份脚本,至少要做到四件事:第一,备份内容可配置,换一...
- 换新机器或接手别人的服务器时,先跑一遍环境体检脚本:时间、主机、目录、Python/Node 版本、磁盘内存一次打全。附可直接复制的 Shell 脚本和四个常见坑。 换新机器或接手别人的服务器时,先跑一遍环境体检脚本:时间、主机、目录、Python/Node 版本、磁盘内存一次打全。附可直接复制的 Shell 脚本和四个常见坑。
- 本文介绍 Linux 管道与重定向的入门用法:用 >、>>、< 保存和读取输出,用 | 把命令串成流水线,并提醒几个容易混淆的点。 本文介绍 Linux 管道与重定向的入门用法:用 >、>>、< 保存和读取输出,用 | 把命令串成流水线,并提醒几个容易混淆的点。
上滑加载中
推荐直播
-
华为云码道Agent集成与鸿蒙实战2026/08/11 周二 19:00-21:00
王一男-华为云码道产品规划专家;李炎-华为云码道产品专家;彭江敏-华为云鸿蒙端云一体化开发专家
本次直播带你解读华为云码道7月份产品新特性、新功能。更有专家演示码道Agent Space × 钉钉机器集成实战,从0到1打通消息通道;码道鸿蒙端云一体化实战,快速搭建员工签到系统。
回顾中 -
华为云开发者AI素养直播课·第五期2026/09/04 周五 16:00-18:00
林华鼎-华为云AI开发者运营负责人;蒋春阳-华为云AI开发者案例开发专家
本期直播内容: AI工具体验营 · 第5-8课连讲。Agent-Team 多智能体协作完成毕业设计实践
回顾中 -
华为云开发者AI素养ClassRoom·第六期2026/09/08 周二 19:00-20:00
樊渊-2026华为软件挑战赛冠军
高手来了:看软挑高手解析二维排样问题—从工业难题到算法突破
回顾中
热门标签