跳到主要内容
外观
外观设置
显示模式
主题配色

保存在此浏览器,所有页面通用。

Windows 和 Linux 关机、重启命令及定时操作

3,991 次浏览0 次点赞

Windows 和 Linux 都可以通过命令关机、重启或设置定时关机。下面先列出常用命令,再介绍各命令的区别和使用方法。

Windows 部分适用于 Windows 10、Windows 11 和常见 Windows Server 版本;Linux 部分以使用 systemd 的发行版为例。不同系统版本或命令实现可能有所差异,请以本机帮助和文档为准。

一、Windows 和 Linux 关机、重启命令对照

Linux 命令通常需要管理员权限,以下示例使用 sudo。Windows 命令可以在命令提示符(CMD)或 PowerShell 中使用。

操作 Windows Linux(systemd)
立即关机并关闭电源 shutdown /s /t 0 sudo shutdown -h now
sudo poweroff
sudo halt -p
sudo init 0
sudo systemctl poweroff
立即重启 shutdown /r /t 0 sudo shutdown -r now
sudo reboot
sudo init 6
sudo systemctl reboot
一小时后关机 shutdown /s /t 3600 sudo shutdown -h +60
十分钟后重启 shutdown /r /t 600 sudo shutdown -r +10
取消等待中的关机或重启 shutdown /a sudo shutdown -c
停止系统,通常不关闭电源 无直接对应的常用命令 sudo halt
sudo systemctl halt

注意时间单位:Windows 的 /t 使用秒;systemd Linux 的 shutdown +数字 使用分钟。

二、Windows 关机和重启命令

1. 立即关机

shutdown /s /t 0
  • /s:关闭计算机。
  • /t 0:等待 0 秒后执行。

2. 立即重启

shutdown /r /t 0

/r 表示关闭并重启计算机。

3. 定时关机或重启

一小时后关机:

shutdown /s /t 3600

十分钟后重启:

shutdown /r /t 600

/t 后面的数字以秒为单位。等待时间大于 0 时,Windows 会隐含启用 /f,到时强制关闭正在运行的应用程序,未保存的数据可能丢失,请提前保存工作。

4. 取消定时关机或重启

在等待期间执行:

shutdown /a

该命令用于取消尚未执行的关机或重启。已经开始执行的操作无法通过它撤销。

5. 使用 PowerShell 关机或重启

在 PowerShell 中,也可以使用以下命令操作本机:

# 关机
Stop-Computer

# 重启
Restart-Computer

更多参数可参考 Microsoft shutdown 命令文档和 PowerShell 更改计算机状态文档。

三、Linux 关机和重启命令

以下示例适用于使用 systemd 的 Linux 系统,例如 Ubuntu、Debian、RHEL 及其部分衍生发行版。非 systemd 系统的命令行为可能不同,可通过 man 命令名 查看本机文档。

1. shutdown:定时关机或重启

shutdown 可以立即或定时关闭、重启系统。正常情况下,它会通知已登录用户,并由系统执行关机流程。

立即关机:

sudo shutdown -h now

一分钟后关机:

sudo shutdown -h +1

在 systemd 的 shutdown 中,+1 表示从现在起等待 1 分钟,+60 表示 60 分钟后执行。

在系统本地时间 23:00 关机:

sudo shutdown -h 23:00

时间采用 24 小时制。设置前请确认系统时间正确。

立即重启:

sudo shutdown -r now

十分钟后重启,并向已登录用户发送提示:

sudo shutdown -r +10 "系统将在 10 分钟后重启,请保存工作。"

取消尚未执行的关机或重启计划:

sudo shutdown -c

常用参数包括:-h 用于关机,-r 用于重启,-c 用于取消计划,--no-wall 用于不发送广播消息。详见 systemd shutdown 官方文档。

2. poweroff:关机并关闭电源

poweroff 用于关闭系统并请求关闭电源。普通使用时,系统会通过正常关机流程停止服务:

sudo poweroff

3. reboot:重启系统

sudo reboot

远程操作时,连接会在重启过程中断开;系统启动完成后,需要重新连接。

4. halt:停止系统

在 systemd 中,普通的 halt 会执行关机流程并停止内核,但通常不会关闭硬件电源:

sudo halt

如果需要关闭电源,可以使用 halt -p,也可以直接使用更直观的 poweroff:

sudo halt -p

在一些旧版或非 systemd 系统中,halt 的行为可能不同。具体选项可参考 systemd halt、poweroff 和 reboot 官方文档。

5. init:切换运行级别

在传统 SysV init 中,运行级别 0 通常用于关机,运行级别 6 用于重启:

# 关机
sudo init 0

# 重启
sudo init 6

systemd 提供了与传统运行级别的兼容机制,但日常使用建议直接使用 poweroff、reboot 或 systemctl。参见 systemd 运行级别兼容说明。

6. systemctl:通过 systemd 管理电源操作

在使用 systemd 的系统中,也可以通过 systemctl 执行电源操作:

# 关机并关闭电源
sudo systemctl poweroff

# 重启
sudo systemctl reboot

# 停止系统,通常不关闭电源
sudo systemctl halt

相关行为和选项可参考 systemctl 官方文档。

四、Linux 命令有什么区别?

  • shutdown:支持立即或定时关机、重启,也可以取消尚未执行的计划。需要定时操作时可以使用它。
  • poweroff:关闭系统并请求关闭电源,适合日常立即关机。
  • reboot:关闭系统并重启,适合日常立即重启。
  • halt:在 systemd 中默认停止系统,但通常不关闭硬件电源;加上 -p 才请求关闭电源。
  • init:通过传统运行级别控制系统。init 0 用于关机,init 6 用于重启,主要用于兼容传统操作方式。
  • systemctl:systemd 的管理工具,可以通过 poweroff、reboot 或 halt 子命令执行对应操作,也可以管理系统服务。

在 systemd 系统中,普通的 poweroff、reboot、halt 和对应的 systemctl 命令都会请求系统执行相应操作,并非默认跳过清理。

五、注意事项

  • 操作前保存工作,并确认重要任务、数据库或其他服务可以停止。
  • 远程管理计算机或服务器时,确认关机或重启后有可用的管理方式,避免无法重新连接。
  • 谨慎使用强制关闭选项。强制关闭可能导致未保存的数据丢失,Linux 上还可能跳过正常的服务停止或文件系统卸载流程。