Simple controllable and cancelable script for backup software Auto-sleep/hibernate

有好些電腦或虛擬電腦在進行 自動/手動 備份作業時,希望可以在完成時自動進入 Sleep mode,…


有好些電腦或虛擬電腦在進行 自動/手動 備份作業時,希望可以在完成時自動進入 Sleep mode,一直有利用不同 Backup software 裡的自動 Shutdown (Sleep/Hibernate) 功能。但過度自動有些時候也不太好,有時候有關系統仍在使用中的,於是打算編寫一些 Shell script 來優化一下,同時間可以籍著修改一個 File 裡的 Variable 來讓 Shell script 判斷一下要不要真的執行 Auto-sleep。一旦開始進入 Auto-sleep 的程序也先倒數 3oo 秒,期間可以用 Run… 或 DOS Prompt 鍵入 Command 解除。

材料

PSTools

這個是一系列很好用的小程式,詳情可參考這裡(PsTools By Mark Russinovich)。

  • PsExec – execute processes remotely
  • PsFile – shows files opened remotely
  • PsGetSid – display the SID of a computer or a user
  • PsInfo – list information about a system
  • PsPing – measure network performance
  • PsKill – kill processes by name or process ID
  • PsList – list detailed information about processes
  • PsLoggedOn – see who’s logged on locally and via resource sharing (full source is included)
  • PsLogList – dump event log records
  • PsPasswd – changes account passwords
  • PsService – view and control services
  • PsShutdown – shuts down and optionally reboots a computer
  • PsSuspend – suspends processes
  • PsUptime – shows you how long a system has been running since its last reboot (PsUptime’s functionality has been incorporated into PsInfo)

    DOS Batch Script

    Knowledge of DOS Shell – Batch Script. 簡單介紹

    存放 Yes or No variable 的檔案

    我把它的檔案名定為 Sure-AutoSuspend.bat:/p>

    @ECHO OFF
    SET var_Sure=Y

    主 Script 檔案

    存放位置是 C:\Program Files

    Auto-Suspend.bat 的內容:

    @ECHO OFF
    echo %DATE% %TIME%
    CALL Sure-AutoSuspend.bat

    ECHO Preset Sure for Auto-suspend value is %var_Sure%

    IF “%var_Sure%”==”Y” (
    ECHO “Preparing to suspend this computer…”
    “C:\Program Files\PSTools\psshutdown.exe” -d -t 300 -v 300
    PAUSE
    ) ELSE IF “%var_Sure%”==”N” (
    ECHO “Do nothing.”
    REM call
    )

    設定備份軟件在完成備份工作時執行主 Script  檔案

    注意,這裡的例子是 Acronis 的備份軟件,其它的備份軟件設定版面有異,或是個別的備份軟件並沒有這種功能也說不定的。

    SnapCrab_NoName_2016-5-22_14-11-50_No-00

    一旦發現 DOS Prompt 彈出來顯示已進入倒數階段,而手上的工作仍未完成,或者是電腦仍有些 Batch Process 正在進行中不打算中止,可以在 Run… 或 DOS Prompt 裡輸入以下指令取消之。

    psshutdown -a

  • コメントを残す

    メールアドレスが公開されることはありません。 * が付いている欄は必須項目です