shell 每小时 无限循环 示例
时间: 2023-07-09 10:35:52 浏览: 87
以下是一个 shell 每小时无限循环示例,它将在每个小时的第一分钟执行一次命令,直到手动停止:
```shell
while true
do
now=$(date +%M%S)
if [[ "$now" == "0100" ]]; then
echo "Command executed at $(date)"
# 在这里添加你想要执行的命令
fi
sleep 1
done
```
在这个示例中,`while` 关键字指定了一个条件循环,`true` 表示条件始终为真,所以循环将无限执行。循环体内部的命令是 `now=$(date +%M%S)`,它将获取当前时间(分秒)并将其赋值给变量 `now`。然后,`if` 语句将检查当前时间是否为每个小时的第一分钟(`0100`)。如果是,它将输出一条消息并执行你想要运行的命令。最后,`sleep 1` 命令将等待一秒钟,然后再次检查当前时间。
要停止循环,可以使用 `Ctrl + C` 组合键来中断当前正在运行的 shell 脚本。
相关问题
python 程序循环 中每2运行小时 通过ADB关闭一次APP
可以使用Python的time模块和subprocess模块来实现。
首先,需要安装ADB并将其添加到环境变量中。
然后,可以使用time模块中的sleep函数来让程序睡眠2个小时。当程序醒来时,使用subprocess模块中的Popen函数来执行ADB命令,关闭APP。
下面是示例代码:
```python
import time
import subprocess
while True:
time.sleep(2 * 60 * 60) # 程序睡眠2个小时
subprocess.Popen(['adb', 'shell', 'am', 'force-stop', 'com.example.app.package']) # 关闭APP
```
其中,'com.example.app.package'需要替换为你要关闭的APP的包名。
python 每2运行小时 通过ADB关闭一次APP
要实现每2小时通过ADB命令关闭一次APP,您可以使用Python的定时任务模块schedule来实现。以下是一个示例代码:
```python
import schedule
import time
import subprocess
def close_app():
# 执行ADB命令关闭APP
subprocess.call(['adb', 'shell', 'am', 'force-stop', 'com.example.app'])
# 每2小时执行一次 close_app 函数
schedule.every(2).hours.do(close_app)
while True:
schedule.run_pending()
time.sleep(1)
```
在这个脚本中,我们定义了一个名为`close_app`的函数,该函数会执行ADB命令关闭APP。我们使用定时任务模块schedule来每2小时执行一次该函数。在无限循环中,我们使用`schedule.run_pending()`方法来检查是否有待执行的任务,并使用`time.sleep(1)`方法来保证每秒钟执行一次循环。注意,当您运行此脚本时,需要将`com.example.app`替换为您要关闭的APP的包名。