shell写一个while循环语句,每隔n秒钟(shell变量可配置)输出当前时间(精确到毫秒,格式2022-01-01 23:00:00.000)和脚本已执行(同一行输出)
时间: 2023-02-08 07:15:54 浏览: 326
shell脚本编程之循环语句
5星 · 资源好评率100%
可以使用如下的代码实现:
```
#!/bin/bash
n=5 # 设置循环间隔时间为5秒
i=0 # 设置脚本已执行次数的计数器
while true; do
i=$((i+1)) # 每次循环累加1
now=$(date +"%Y-%m-%d %H:%M:%S.%3N") # 获取当前时间,精确到毫秒
echo -e "$now \t已执行次数: $i" # 输出当前时间和已执行次数
sleep $n # 等待 $n 秒
done
```
说明:
- `date` 命令用于获取当前时间, 通过格式化字符串 `%Y-%m-%d %H:%M:%S.%3N` 可以输出日期和时间, 并精确到毫秒.
- `echo -e` 命令用于输出字符串, `-e` 选项可以支持转义字符
- `sleep` 命令用于等待一段时间,单位秒
- `while true; do` 是一个无限循环,在每次循环中都会输出当前时间和已执行次数,直到脚本被终止
运行这个脚本,每隔n秒钟就会输出当前时间和已执行次数
注意:这个脚本需要在linux系统上运行。
阅读全文