Linux 命令重复执行

LinuxLinuxBeginner
立即练习

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

引言

在古埃及的中心,一位强大法老的宏伟宫殿中,有一间装饰着壁画的非凡房间,这些壁画讲述了古老时代的故事。在这间房间里,一位备受尊敬的宫廷画家正在工作,他精湛的技艺使他在统治者眼中享有盛誉和青睐。这位画家的最新任务是描绘法老最近胜利的辉煌和日常生活。然而,为了确保作品的准确性并不断更新,画家必须依赖他画笔和凿子的远房表亲:watch 命令。

本实验的目标是掌握 watch 命令的使用,确保画家能够及时了解法老王国的最新动态。该命令将让画家反复观察变化,就像他将生活的连续流动捕捉到纸莎草画布上一样。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("`Linux`")) -.-> linux/SystemInformationandMonitoringGroup(["`System Information and Monitoring`"]) linux/SystemInformationandMonitoringGroup -.-> linux/watch("`Command Repeating`") subgraph Lab Skills linux/watch -.-> lab-271435{{"`Linux 命令重复执行`"}} end

探索 watch 命令

在这一步中,你将学习 watch 命令的基础知识。watch 命令用于定期运行指定的命令,并将其输出显示在终端中。这对于监控运行进程的进度或更新非常有用。

想象你是那位画家,你想要监测尼罗河每小时的温度,因为它可能会影响颜料的干燥。为了模拟这一场景,让我们创建一个简单的脚本,每次运行时输出一个随机温度:

首先,导航到你的工作目录:

cd ~/project

然后,创建脚本 generate_temperature.sh,内容如下。

脚本内容:

echo $(((RANDOM % 50) + 10)) 'degrees Celsius' > temperature.txt

为了使用 watch 观察温度变化,我们可以执行以下命令:

watch -n 3600 bash ./generate_temperature.sh

该命令将每小时(3600 秒)执行一次 generate_temperature.sh,并显示记录的温度。

监控目录中的变化

在这一步中,你将模拟监控存储在设计草稿目录中的变化。随着绘画的进展,你需要密切关注学徒们更新的设计。

首先,让我们创建一个目录来模拟草稿存储,并创建一个虚拟的草稿文件:

mkdir ~/project/drafts
touch ~/project/drafts/draft1.txt

为了实时查看 drafts 目录中的更新,你可以将 watchls 命令结合使用:

watch -n 30 ls -l ~/project/drafts

该命令将每 30 秒在 drafts 目录上执行一次 ls -l,向你显示文件大小或修改时间的最新变化。

总结

在本实验中,重点是将你带入一位警觉的埃及画家的角色,任务是使用 watch 命令作为工具,密切关注周围不断变化的世界。从监测尼罗河岸的温度到密切关注学徒的工作,watch 命令成为了你数字工具箱中的重要工具。通过精心设计的场景,本实验希望你能够掌握持续监控的实用技能,并引导你在命令行中像画家在画布上一样专注。

您可能感兴趣的其他 Linux 教程