按下电源键直接关机
以下方法在 ubuntu 12.04 lts desktop 下测试成功
“按下电源键” 是一个系统事件
相关配置文件为
/etc/acpi/events/powerbtn
查看这个文件发现这样两行
event=button[ /]power
action=/etc/acpi/powerbtn.sh
说明按下电源键时执行了 /etc/acpi/powerbtn.sh 这个脚本
那么打开这个脚本看看,发现N多if ,看着有点晕。不过最后两行还是不错的
# If all else failed, just initiate a plain shutdown.
# 这行注释道出了上面所有代码的真谛。对于需要一键关机的人来说,之前所有的判断都没有用的。
/sbin/shutdown -h now "Power button pressed"
只保留最后一行就够了。
为了以防万一,新建一个脚本文件
#!bin/bash
/sbin/shutdown -h now "Power button pressed"
然后在 /etc/acpi/events/powerbtn 中把默认的注释掉,启用新的脚本。例如
event=button[ /]power
#action=/etc/acpi/powerbtn.sh
action=/etc/acpi/poweroff.sh
别忘记给 poweroff.sh 可执行权限
提示:
虽然脚本可以随便写,比如按下电源键启动音乐播放器.........但这样做不好。
另外,不推荐使用poweroff来关机,虽然看上去效果一样。但poweroff更像是强制关机,未保存的数据会有丢失风险。
使用命令实现Ubuntu重启/关机
好像ubuntu的终端中默认的是当前用户的命令,只是普通用户,因此在终端器中可以使用sudo -sh 转换到管理员root用户下执行命令。
shutdown --help
可以查看shutdown命令如何使用,当然也可以使用man shutdown命令。
shutdown -h no w 现在立即关机
shutdown -r now 现在立即重启
shutdown -r +3 三分钟后重启
shutdown -h +3 "The System will shutdown after 3 minutes" 提示使用者将在三分钟后关机
shutdown -r 20:23 在20:23时将重启计算机
shutdown -r 20:23 & 可以将在20:23时重启的任务放到后台去,用户可以继续操作终端
中断命令
执行完命令后(若没有转到后台),可以使用CTRL+C来中止命令
kill 程序编码
当命令在后台执行时系统会返回一个程序编码,例如:在使用 shutdown -r 20:23 & 系统返回系统编码:4905
我们可以使用kill 4905来中止重启命令
3ps aux | grep 程序编号
我们如果知道程序的编号,我们可以使用ps aux |grep 程序编号来查询该程序编号对应的命令是什么。