写一个可以在mac系统执行的shell脚本输入时间格式是HHss在这个时间自动执行shutdown命令
以下是一个可以在Mac系统上执行的shell脚本,它会在指定时间自动执行shutdown命令:
#!/bin/bash
# 获取当前时间
current_time=$(date +"%H:%M")
# 读取用户输入的时间
read -p "请输入关机时间(格式:HH:MM): " shutdown_time
# 将用户输入的时间转换为24小时制
shutdown_time=$(date -j -f "%I:%M%p" "$shutdown_time" "+%H:%M")
echo "将在 $shutdown_time 关机"
# 比较当前时间和关机时间
if [[ "$current_time" > "$shutdown_time" ]]; then
echo "输入的时间已过,请重新运行脚本并输入未来的时间。"
exit 1
fi
# 计算需要等待的秒数
shutdown_seconds=$(date -j -f "%H:%M" "$shutdown_time" "+%s") # 关机时间的总秒数
current_seconds=$(date "+%s") # 当前时间的总秒数
wait_seconds=$((shutdown_seconds - current_seconds)) # 需要等待的秒数
# 等待到关机时间
echo "将在 $wait_seconds 秒后关机"
sleep $wait_seconds
# 执行关机命令
shutdown -h now
使用说明:
- 打开一个文本编辑器,将上述脚本复制粘贴到新建的文件中。
- 将文件保存为
shutdown.sh(或者其他你喜欢的名称)。 - 打开终端应用程序。
- 使用
cd命令切换到包含脚本的目录。 - 运行命令
chmod +x shutdown.sh,以使脚本文件可执行。 - 运行命令
./shutdown.sh,按照提示输入关机时间(格式为HH:MM)。 - 程序将会在指定的时间自动执行关机命令。
请注意,这个脚本需要在终端中手动运行,并且需要提供正确的关机时间作为输入。如果输入的时间已经过去,脚本将会提示重新运行并输入未来的时间
原文地址: https://www.cveoy.top/t/topic/iGBn 著作权归作者所有。请勿转载和采集!