- 引言在 Linux 服务器上,每天凌晨备份日志、清理临时文件、检查服务状态,手动操作既耗时又容易出错。Shell 脚本就是把一条条命令组织起来、一次编写多次运行的工具,是运维入门和开发提效的第一步。本文以 Bash 为例,介绍变量、条件判断与循环,并用一个备份小脚本把它们串起来。 一、变量定义变量时等号两边不能有空格,引用时在变量名前加 $,花括号可以明确变量边界。name="shell"... 引言在 Linux 服务器上,每天凌晨备份日志、清理临时文件、检查服务状态,手动操作既耗时又容易出错。Shell 脚本就是把一条条命令组织起来、一次编写多次运行的工具,是运维入门和开发提效的第一步。本文以 Bash 为例,介绍变量、条件判断与循环,并用一个备份小脚本把它们串起来。 一、变量定义变量时等号两边不能有空格,引用时在变量名前加 $,花括号可以明确变量边界。name="shell"...
- 用 flock 防止 crontab 任务重叠执行Linux 服务器上最常见的定时任务写法,是把脚本丢进 crontab。任务本身通常没问题,真正容易踩坑的是:上一轮还没跑完,下一轮又被 cron 拉起来了。备份、报表、同步这类工作一旦重叠,轻则重复写入、日志交错,重则把同一份数据改乱,甚至把磁盘或数据库打满。flock 是 util-linux 自带的文件锁工具,大部分发行版默认就有,不... 用 flock 防止 crontab 任务重叠执行Linux 服务器上最常见的定时任务写法,是把脚本丢进 crontab。任务本身通常没问题,真正容易踩坑的是:上一轮还没跑完,下一轮又被 cron 拉起来了。备份、报表、同步这类工作一旦重叠,轻则重复写入、日志交错,重则把同一份数据改乱,甚至把磁盘或数据库打满。flock 是 util-linux 自带的文件锁工具,大部分发行版默认就有,不...
- 平时写代码,我最怕的不是需求难,而是“想验证一个小想法,却要先搭一整套环境”。装依赖、配端口、开服务器,一圈下来,想法本身反而被磨没了。今天在华为云 AI DevSpace 体验版里,我用一句话让 AI Shell 帮我把一个 Python 时间服务跑了起来,整个过程比我预想的要顺,也有一些值得记下来的细节。 一句话需求,AI 先去做检查我给 AI Shell 的问题是:在 DevSpace... 平时写代码,我最怕的不是需求难,而是“想验证一个小想法,却要先搭一整套环境”。装依赖、配端口、开服务器,一圈下来,想法本身反而被磨没了。今天在华为云 AI DevSpace 体验版里,我用一句话让 AI Shell 帮我把一个 Python 时间服务跑了起来,整个过程比我预想的要顺,也有一些值得记下来的细节。 一句话需求,AI 先去做检查我给 AI Shell 的问题是:在 DevSpace...
- rsync 同步与备份的五个实用用法在服务器运维里,复制文件看似简单,但一旦涉及大目录、跨机器、断点续传和定期备份,cp 和 scp 就显得力不从心了。rsync 只传输有变化的部分,速度快、可续传、可预演,是日常同步和备份的好帮手。下面整理五个我在实际工作中最常用的用法。 一、基础同步:-a 和 -v,注意结尾斜杠rsync -av /data/project/ /backup/proj... rsync 同步与备份的五个实用用法在服务器运维里,复制文件看似简单,但一旦涉及大目录、跨机器、断点续传和定期备份,cp 和 scp 就显得力不从心了。rsync 只传输有变化的部分,速度快、可续传、可预演,是日常同步和备份的好帮手。下面整理五个我在实际工作中最常用的用法。 一、基础同步:-a 和 -v,注意结尾斜杠rsync -av /data/project/ /backup/proj...
- 终端背后的隐形之手——读《A Brief Introduction to termios》有感每天打开终端敲命令时,我很少去想:为什么按 Ctrl+C 能杀进程,而 vim 里它只是一个普通按键?为什么 cat 也能做退格编辑,尽管比 shell 的 readline 简陋得多?Nelson Elhage 的这篇博文,用一个清晰的"中间层"回答了这些被我视作理所当然的问题——它就是 term... 终端背后的隐形之手——读《A Brief Introduction to termios》有感每天打开终端敲命令时,我很少去想:为什么按 Ctrl+C 能杀进程,而 vim 里它只是一个普通按键?为什么 cat 也能做退格编辑,尽管比 shell 的 readline 简陋得多?Nelson Elhage 的这篇博文,用一个清晰的"中间层"回答了这些被我视作理所当然的问题——它就是 term...
- 每天在终端里重复敲同样的长命令,既慢又容易打错。shell 自带的 alias 功能可以给命令起个短名字,一次设置,长期受益。先试三个最常用的:alias ll=‘ls -lah’ ,以后敲 ll 就能看到带大小的详细列表;alias gs=‘git status’ ,查仓库状态只要两个字母;alias …=‘cd …’ ,返回上一级目录不用再敲 cd。临时设置只在当前终端窗口有效,关掉就没... 每天在终端里重复敲同样的长命令,既慢又容易打错。shell 自带的 alias 功能可以给命令起个短名字,一次设置,长期受益。先试三个最常用的:alias ll=‘ls -lah’ ,以后敲 ll 就能看到带大小的详细列表;alias gs=‘git status’ ,查仓库状态只要两个字母;alias …=‘cd …’ ,返回上一级目录不用再敲 cd。临时设置只在当前终端窗口有效,关掉就没...
- 11 月 11 日下午,我在华为云 KooLabs 上把“DeepSeek 快速安装部署”(编号 3992)跑完了。实验本身免费,用的是沙箱账号,没有产生费用,+50 积分当天 15:30 到账。过程不算顺利,但最后总结出的这条路是通的,值得记下来。先踩的两个坑:第一个坑在浏览器形态。上午我先用手机形态的浏览器去开实验,平台直接拒绝:“移动端不支持实验操作,请前往电脑端开始实验”。换成桌面形... 11 月 11 日下午,我在华为云 KooLabs 上把“DeepSeek 快速安装部署”(编号 3992)跑完了。实验本身免费,用的是沙箱账号,没有产生费用,+50 积分当天 15:30 到账。过程不算顺利,但最后总结出的这条路是通的,值得记下来。先踩的两个坑:第一个坑在浏览器形态。上午我先用手机形态的浏览器去开实验,平台直接拒绝:“移动端不支持实验操作,请前往电脑端开始实验”。换成桌面形...
- 今天在鸿蒙开发实践中心读完个人记账本案例:ArkTS 三 Tab 端侧加 ECS 自托管 Appwrite 云函数,讲清分类占比为何放云端 get-stats 聚合、scrypt 密码处理与演示到生产的改造清单,并记录 AI Shell 追问中把后端误认成 CloudDB 的一次纠错。 今天在鸿蒙开发实践中心读完个人记账本案例:ArkTS 三 Tab 端侧加 ECS 自托管 Appwrite 云函数,讲清分类占比为何放云端 get-stats 聚合、scrypt 密码处理与演示到生产的改造清单,并记录 AI Shell 追问中把后端误认成 CloudDB 的一次纠错。
- 今天(2026-11-13)上午,我从开发者成长中心走了一遍 AI DevSpace 体验版,又读了鸿蒙实践中心发布的个人记账本案例。两件事都不大,但各有一个值得记下来的实测点。 一、AI DevSpace 体验版:第一条命令 257ms入口是成长中心任务卡“每日体验 AI DevSpace”,点“去完成”进入 AI 办公开发实践中心,再点“前往 AI DevSpace 实践”,选免费的体验... 今天(2026-11-13)上午,我从开发者成长中心走了一遍 AI DevSpace 体验版,又读了鸿蒙实践中心发布的个人记账本案例。两件事都不大,但各有一个值得记下来的实测点。 一、AI DevSpace 体验版:第一条命令 257ms入口是成长中心任务卡“每日体验 AI DevSpace”,点“去完成”进入 AI 办公开发实践中心,再点“前往 AI DevSpace 实践”,选免费的体验...
- 今天在鸿蒙开发实践中心浏览了“计算器应用模板”案例,并给它的 GitCode 代码仓 harmony-practice-center/HarmonyOS-APPTMPL-calculator 点了 Star;随后又在 AI DevSpace 的 AI Shell 里问了一个问题:一台运行中的 ECS 实例,怎么查看 CPU 和内存占用。这篇笔记把两件事合在一起写:一个是端侧小应用的状态管理,... 今天在鸿蒙开发实践中心浏览了“计算器应用模板”案例,并给它的 GitCode 代码仓 harmony-practice-center/HarmonyOS-APPTMPL-calculator 点了 Star;随后又在 AI DevSpace 的 AI Shell 里问了一个问题:一台运行中的 ECS 实例,怎么查看 CPU 和内存占用。这篇笔记把两件事合在一起写:一个是端侧小应用的状态管理,...
- 今天进了一次 AI 开发者空间。点开左边的 AI Shell,输了一个问题。问的是 SFS 和 OBS 有什么区别,什么时候该用 SFS。这个问题我之前一直没彻底弄明白。平时看文档,两个服务的介绍各说各的。放在一起比,还是第一次。AI 回得很快。先讲了本质区别。SFS 是文件系统,能挂载,能像本地目录一样用。OBS 是对象存储,走 API,对象改不了局部,只能整体重传。改文件局部内容这个点,... 今天进了一次 AI 开发者空间。点开左边的 AI Shell,输了一个问题。问的是 SFS 和 OBS 有什么区别,什么时候该用 SFS。这个问题我之前一直没彻底弄明白。平时看文档,两个服务的介绍各说各的。放在一起比,还是第一次。AI 回得很快。先讲了本质区别。SFS 是文件系统,能挂载,能像本地目录一样用。OBS 是对象存储,走 API,对象改不了局部,只能整体重传。改文件局部内容这个点,...
- nohup job.sh 2>&1 > app.log 为什么错误还是打在屏幕上?本文从 0/1/2 三个文件描述符讲清重定向与 2>&1 的复制语义、顺序陷阱、管道配合,并给出 /proc/$PID/fd 与 strace 的排障命令。 nohup job.sh 2>&1 > app.log 为什么错误还是打在屏幕上?本文从 0/1/2 三个文件描述符讲清重定向与 2>&1 的复制语义、顺序陷阱、管道配合,并给出 /proc/$PID/fd 与 strace 的排障命令。
- 每天手动备份文件,既耗时又容易忘。学会写一个简单的 Shell 脚本,就能让备份定时自动完成。本文用一个真实可用的例子,带你从零写出第一个自动化备份脚本。 一、Shell 脚本是什么Shell 是 Linux 系统的命令解释器,我们在终端里输入的每一条命令,都是由 Shell 执行的。把多条命令按顺序写进一个以 .sh 结尾的文本文件,再交给 Shell 执行,这个文件就是 Shell 脚本... 每天手动备份文件,既耗时又容易忘。学会写一个简单的 Shell 脚本,就能让备份定时自动完成。本文用一个真实可用的例子,带你从零写出第一个自动化备份脚本。 一、Shell 脚本是什么Shell 是 Linux 系统的命令解释器,我们在终端里输入的每一条命令,都是由 Shell 执行的。把多条命令按顺序写进一个以 .sh 结尾的文本文件,再交给 Shell 执行,这个文件就是 Shell 脚本...
- 从管道退出码、命令替换、(( )) 陷阱,到 local 掩盖失败与后台 wait,逐条给出可照抄的写法,并附一份带 ERR trap 的脚本骨架和三条自检清单。 从管道退出码、命令替换、(( )) 陷阱,到 local 掩盖失败与后台 wait,逐条给出可照抄的写法,并附一份带 ERR trap 的脚本骨架和三条自检清单。
- 按成长中心任务走了完整一圈:浏览鸿蒙签到案例、进 AI DevSpace 体验版、在 AI Shell 里提问并得到回答,记录了半自动模式的使用体会和下一步练习计划。 按成长中心任务走了完整一圈:浏览鸿蒙签到案例、进 AI DevSpace 体验版、在 AI Shell 里提问并得到回答,记录了半自动模式的使用体会和下一步练习计划。
上滑加载中
推荐直播
-
华为云码道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华为软件挑战赛冠军
高手来了:看软挑高手解析二维排样问题—从工业难题到算法突破
回顾中
热门标签