web-dev-qa-db-ja.com

サスペンド/サスペンドからの復帰時にコマンドを実行するにはどうすればよいですか?

私はラップトップ(pm-suspend)を頻繁に一時停止し、デスクトップ(pm-suspend-hybrid)をかなり頻繁に一時停止します。私は最新のubuntu(13.10、saucy)を使用しています。

サスペンドに入ったとき、またはサスペンドから抜け出した直後にコマンドを実行する方法はありますか?開いている出力ssh接続をすべて終了し、offlineimapを停止したいのは、それらのタイムアウトが煩わしい傾向があるためです。アイデア?

9
Frew Schmidt

マンページからpm-action(8)

/etc/pm/sleep.d, /usr/lib/pm-utils/sleep.d
     Programs in these directories (called hooks) are combined
     and executed in C sort order before suspend and hibernate
     with as argument ´suspend´ or ´hibernate´. Afterwards they
     are called in reverse order with argument ´resume´ and
     ´thaw´ respectively. If both directories contain a similar
     named file, the one in /etc/pm/sleep.d will get preference.
     It is possible to disable a hook in the distribution
     directory by putting a non-executable file in
     /etc/pm/sleep.d, or by adding it to the HOOK_BLACKLIST
     configuration variable.

したがって、次のようなシェルスクリプトを簡単に配置できます。

#!/bin/bash

case "$1" in
suspend|hibernate)
    actions to
    take
    on suspend
    or hibernate
    ;;
resume|thaw)
    other actions
    to trigger
    on resume
    ;;
esac

例に99-myhooks.shそしてそれを実行可能にします。

ところで、あなたは入力することによって古いSSH接続を殺すことができます Enter~.Enter SSHセッションで。

10
Andreas Wiese