Linux 的 sleep 命令

Linux 的 sleep 命令# Linux 的 sleep 命令详解

基本概念

sleep 是 Linux 系统中一个简单但非常有用的命令,用于在 shell 脚本或命令行中暂停执行指定的时间。该命令属于 GNU Coreutils 工具集的一部分,几乎所有 Linux 发行版都默认包含。

命令语法

基本语法格式为:
sleep NUMBER[SUFFIX]...

其中:

  • NUMBER 表示时间数值(可以是整数或小数)
  • SUFFIX 是可选的单位后缀,可以是:
    • s - 秒(默认单位)
    • m - 分钟
    • h - 小时
    • d - 天

使用示例

  1. 暂停 5 秒:
bash 复制代码
sleep 5
# 或
sleep 5s
  1. 暂停 2 分 30 秒:
bash 复制代码
sleep 2m 30s
  1. 暂停 0.5 秒(500 毫秒):
bash 复制代码
sleep 0.5
  1. 在脚本中使用:
bash 复制代码
#!/bin/bash
echo "开始执行..."
sleep 3
echo "3秒后继续执行"

高级用法

  1. 结合其他命令使用:
bash 复制代码
# 每5秒检查一次磁盘空间
while true; do
    df -h
    sleep 5
done
  1. 使用变量控制休眠时间:
bash 复制代码
delay=10
echo "等待${delay}秒..."
sleep $delay
  1. 多个时间参数相加:
bash 复制代码
# 总共休眠 1分40秒 (1m + 40s)
sleep 1m 40s

注意事项

  1. 最小时间精度取决于系统实现,通常可以精确到微秒级别

  2. 在脚本中使用时,sleep 会阻塞整个进程的执行

  3. 可以通过 Ctrl+C 中断正在执行的 sleep 命令

  4. 某些特殊环境中(如嵌入式系统)可能有不同的 sleep 实现

替代方案

在某些情况下,可以使用以下替代方法实现类似效果:

  • usleep - 微秒级休眠(但已逐渐被弃用)
  • read -t - 使用 bash 内置命令实现超时等待
  • 编程语言中的 sleep 函数(如 Python 的 time.sleep())
相关推荐
未济3 天前
linux 配置环境变量
linux
傲世仙尊3 天前
目录即文件-Ext文件系统收尾篇
linux·c语言
虎头金猫3 天前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
_艾伦 耶格尔.3 天前
进程间通信
linux
AI职业加油站3 天前
AI智能体应用工程师证书:政策红利下的职业新风口
大数据·运维·人工智能·学习·职场发展
Liuqy-053 天前
Linux IO编程——静态库、动态库
linux
此冬歌咏3 天前
K8s 节点故障实战:优雅驱逐 31 秒,硬故障 331 秒,以及那个永远 Pending 的 Pod
运维·k8s
彧azz3 天前
Linux 环境下 Redis 学习总结:数据类型、持久化、锁、事务、主从与缓存问题
linux·redis·笔记·学习·面试
-梅3 天前
linux(8) 软硬链接
linux·运维·服务器
Wang's Blog3 天前
Java 项目实战: 外卖平台-文件下载与ServletOutputStream回写浏览器
服务器·项目开发