帮我写个shell脚本,定时开关机
时间: 2023-07-05 11:33:35 浏览: 166
好的,以下是一个简单的定时开关机的Shell脚本:
```
#!/bin/bash
# 设置定时开关机时间,单位为24小时制
start_time="8:00"
stop_time="18:00"
# 获取当前时间,格式为HH:MM
current_time=$(date +"%H:%M")
# 判断当前时间是否在开机时间段内
if [[ "$current_time" > "$start_time" && "$current_time" < "$stop_time" ]]; then
# 如果在开机时间段内,则开机
echo "Starting up..."
# 这里需要写开机命令,比如:
# /sbin/shutdown -r now
else
# 如果不在开机时间段内,则关机
echo "Shutting down..."
# 这里需要写关机命令,比如:
# /sbin/shutdown -h now
fi
```
以上脚本中,我们设置了开机时间段和关机时间段,获取当前时间,并判断当前时间是否在开机时间段内。如果在开机时间段内,则执行开机操作;否则执行关机操作。
你可以通过修改`start_time`和`stop_time`变量来设置开关机的时间段,同时也需要根据你使用的操作系统来修改开机和关机的命令。
相关问题
win shell命令 自动定时关机脚本关机
Windows Shell命令可以创建一个自动定时关机的批处理脚本来完成这个任务。批处理文件(.bat)是一种简单的方式来组织一系列命令。下面是一个基本的Windows批处理关机脚本的例子:
```batch
@echo off
set /t timeout=00:30 <!-- 设置倒计时30分钟 -->
echo 还有30分钟系统将自动关机...
ping 127.0.0.1 -n 1800 <!-- 使用ping命令等待倒计时期间 -->
shutdown /s /f /t 0 <!-- 关闭计算机,/s表示关机,/f强制关闭打开的应用程序,/t 0立即执行 -->
```
你可以保存这个内容到一个名为`AutoShutdown.bat`的文件里,然后把它设为计划任务,例如通过控制面板的“任务计划程序”功能,或者使用`Task Scheduler`命令行工具设置定时任务。
以下是使用`Task Scheduler`创建定时任务的基本步骤:
1. 打开命令提示符以管理员身份运行。
2. 输入命令`sc create AutoShutdown command="C:\path\to\AutoShutdown.bat"`,将路径替换为你的脚本实际位置。
3. 设置触发器(比如每天特定时间),输入`schtasks /create /tn "AutoShutdown" /tr "C:\path\to\AutoShutdown.bat" /sc daily /st HH:MM`,其中`HH:MM`是你想要的时间点。
4. 完成后确认任务添加成功。
win shell命令 定时关机
在Windows系统中,你可以通过创建一个批处理脚本(也称为bat文件)来设置定时关机。批处理是一种简单的方式来运行一系列命令。以下是使用`shutdown /s /t [延迟时间]`命令进行定时关机的基本步骤:
1. 打开文本编辑器,例如记事本(Notepad)或者专门的批处理编辑器(如`cmd /c echo off > shutdown.bat`创建一个名为shutdown.bat的新文件)。
2. 在打开的文件中输入以下内容(替换`[延迟时间]`为你想要的关机时间,单位为秒):
```
@echo off
shutdown /s /t [延迟时间]
```
`@echo off`用于关闭命令提示符显示行号和当前命令;`/s`表示关闭计算机;`/t [延迟时间]`指定关机前的倒计时时间。
3. 保存并关闭文件,文件名建议使用有意义的名字,比如`shutdown_2300.bat`(表示23点整关机)。
4. 双击这个.bat文件,或者将其添加到任务计划程序来定时执行。为了定时执行,可以在任务计划程序中创建一个新的任务,选择“触发器”部分设定每天、每周或特定日期的时间,并将刚才创建的.bat文件作为操作。
5. 最后,记得给用户适当的权限来执行这个脚本,因为某些高级设置可能需要管理员权限。
阅读全文
相关推荐














