FC2ブログ

    bat

    タイマー式シャットダウン用batファイル v4

    ダウンロードし、ダブルクリックするとできます。

    終了予定までの時間を分で入力すると、内部で秒に変換してshutdownコマンドを実行します。

    実行してしまった後に、処理を中断したい場合は何かしらのキーを押しキャンセルすることができます。

    batファイルを閉じる場合は右上から閉じるボタンを押してください。キャンセルして閉じる、キャンセルせず閉じるボタンで閉じる、どちらもシャットダウンは中止できます。

    更新履歴

    v1
    12/11/22
    ファイル名をpoweroff.batからpoweroff2.batに変更
    時間に文字列が混入した場合即座にシャットダウンが実行されるため、入力文字列を数値か文字列か判定する処理を追加しました。
    文字列と判定された場合は再度時間入力を求めます。

    v2
    12/11/23
    なぜか正常に動作していないので前のファイルに差し替え。
    数値以外を入力すると即座にシャットダウン処理を始めるので注意

    v3
    13/10/01
    不具合修正完了

    v4
    16/07/04
    通常のシャットダウン処理と強制シャットダウンを選べるように変更。


    ダウンロード

    ソース v4
    @echo off
    :LOOP
    rem /////////
    rem 初期化
    set pushKey=
    set SEC=
    set X=
    set TIME=
    rem /////////
    set MIN=60
    set TIME=0
    set /p SEC="自動シャットダウン予定までの時間(分)を入力してください >"
    set /a X=SEC
    if defined X set X=%X:0=%
    if defined X set X=%X:1=%
    if defined X set X=%X:2=%
    if defined X set X=%X:3=%
    if defined X set X=%X:4=%
    if defined X set X=%X:5=%
    if defined X set X=%X:6=%
    if defined X set X=%X:7=%
    if defined X set X=%X:8=%
    if defined X set X=%X:9=%
    if not defined X set /a TIME+=SEC*MIN
    if %TIME%==0 echo 数列のみ有効です。
    if %TIME%==0 goto LOOP
    rem /////////
    echo %SEC%分後にシャットダウン処理を実行します。
    echo;
    echo 通常のシャットダウン処理を実行する場合は1
    echo アプリケーションを強制的に終了しシャットダウンする場合は2
    set /p pushKey= "処理モード:%pushKey%"
    rem /////////
    if "%pushKey%"=="1" (
    echo 処理を実行します。
    shutdown -s -t %TIME%
    echo 処理を中断する場合は何か押してください。
    pause >nul 2>&1
    rem set /p pause = %pause%
    rem if "%pause%" == ("")
    shutdown -a
    goto LOOP
    rem /////////
    ) else if "%pushKey%"=="2" (
    echo 処理を実行します。
    shutdown -s -f -t %TIME%
    echo 処理を中断する場合は何か押してください。
    pause >nul 2>&1
    shutdown -a
    goto LOOP
    rem ) else if "%pushKey%"=="n" (
    rem echo 処理を中断しました。
    rem goto LOOP
    rem /////////
    )else (
    echo 1/2以外は認識しません。処理を中断しました。
    goto LOOP
    )


    作った経緯
    眠たい、でも累計ログイン時間によるアイテム報酬を受け取りたいというそこのあなたに小技を一つ。

    つけっぱなしは電気の無駄、でも帰りが遅くて12時を回ってしまうかもしれない。

    きちんとログインアイテムを受け取りたい、どうしたらいいの?

    答えは簡単、深夜0時を回って4時間でPCの電源が落ちるように設定して寝ればいいだけです。

    新しくツールを入れる必要はなく、windowsに標準で入っているコマンドプロンプトでコマンドを入力すると簡単にできます。

    コマンドプロンプトを起動する方法は、

    window7,vistaの場合
    [windowsメニュー]→[全てのプログラム]→[アクセサリ]→[コマンドプロンプト]

    検索から実行する場合は
    windows7,vistaの場合
    [windowsメニュー]→[プログラムとファイル検索]→[cmd]と入力してcmd.exeを起動

    シャットダウンするコマンドは

    shutdown

    これに、オプションで、時間(秒)を指定します。

    -t sec

    つまり、

    shutdown -t 60

    を入力し、エンターで実行すると、実行から60秒後にPCがシャットダウン処理を始めます。

    1時間+10分
    shutdown -t 4200

    2時間+10分
    shutdown -t 7800

    3時間+10分
    shutdown -t 11400

    4時間+10分
    shutdown -t 15000

    アイテムは若干時間に誤差があるようなので、上の命令文の時間はX時間+10分の猶予時間が足してあります。

    batファイルを作ったので上の使い方がわからない人用に載せておきます。




    動作環境はXP以降
    スポンサーサイト



    poweroff v4

    ■ダウンロード
    poweroff4.bat
    http://www.mediafire.com/download/3ns45jmawpksgv9/poweroff4.bat

    29行目「echo;」で空行を宣言していますが、環境によっては正常に動作しない場合があるかもしれません。
    正常に動作しない場合は29行目「echo;」を削除してください。


    poweroff.bat
    12/11/22
    ファイル名をpoweroff.batからpoweroff2.batに変更
    時間に文字列が混入した場合即座にシャットダウンが実行されるため、入力文字列を数値か文字列か判定する処理を追加
    (文字列と判定された場合は再度時間入力を求めます)

    poweroff2.bat
    12/11/23
    なぜか正常に動作していないので前のファイルに差し替え
    数値以外を入力すると即座にシャットダウン処理を始めるので注意

    poweroff3.bat
    13/10/01
    不具合修正完了

    poweroff4.bat
    終了処理モードの選択を追加


    前回記事
    poweroff
    http://rinatl.blog.fc2.com/blog-entry-351.html

    7 Days To Die用バックアップbat作成ツール(javascript版) v1.0.0

    ゲームバージョン: ワールド名:
    適応しない

    No 保存元絶対パス 保存先絶対パス File Folder
    1 File World Player Region Config Other


    結果



    ■ツール情報

    【 ソフト名 】7 Days To Die用バックアップbat作成ツール(javascript版) v1.0.0
    【 製 作 者 】rin_jugatla
    【バージョン】1.0.0
    【最終更新日】2014/12/28
    【 Skype 】rin_jugatla
    【 twitter 】@rin_jugatla

    ━━━━━━━━━━━━━━━━━━━━━━━━━━━
    ■概要

    7 Days To Dieのバックアップ用batファイルの内容を出力するツールです。
    結果テキストボックス内を空のbatファイルに書き込んでください。

    ━━━━━━━━━━━━━━━━━━━━━━━━━━━
    ■使用上の注意

    開発者が未熟なため予期せぬエラーが起こる可能性があります。
    エラーが出た際はどのような操作でエラーが出たかお知らせいただけると助かります。

    ━━━━━━━━━━━━━━━━━━━━━━━━━━━
    ■著作権

    本ツールはフリーソフトですが、著作権は作者に帰属しています。
    本ツールの一部または全部を無断で複製、複写、転載、改変することは 法律で禁じられています。
    本ツールの内容については、改良のために変更することがあります。

    ━━━━━━━━━━━━━━━━━━━━━━━━━━━
    ■免責事項

    本プログラムが原因で如何なる損害・問題が発生しても作者、配布者は責任を取りません。
    利用者の責任の範囲内でお使い下さい。

    ━━━━━━━━━━━━━━━━━━━━━━━━━━━
    ■動作環境

    javascriptの動作するウェブブラウザ

    ━━━━━━━━━━━━━━━━━━━━━━━━━━━
    ■使用方法

    1.ゲームバージョンとワールド名を入力する。
    2.保存元絶対パスと保存先絶対パスを入力し、種類を選択する(初期World)。
    3.結果出力ボタンを押す。
    4.出力されたテキストを空のbatファイルに書き込む。
    5.batファイルを実行する。
    補足1:batファイルの作り方がわからない場合はメモ帳を開きテキストを書き込み、保存するときに「ファイルの種類」から「すべてのファイル」を選択し、XXX.batと入力する。(XXXは任意)
    補足2:作成済みのbatファイルは右クリックから編集、またはテキストエディタから開くことで再編集可能

    使用例
    設定
    SemiAutoSaveBatC100.jpg
    実行後
    capt_012.jpg

    ━━━━━━━━━━━━━━━━━━━━━━━━━━━
    ■発見済みの不具合

    想定済みの例外を処理できていない(ゲームバージョンとワールド名が未入力の場合)

    ━━━━━━━━━━━━━━━━━━━━━━━━━━━
    ■バージョンアップ履歴

    2014/12/28 v1.0.0

    * 初公開

    ━━━━━━━━━━━━━━━━━━━━━━━━━━━
    ■コメント
    需要と汎用性を無視したがJavascriptの勉強にはなった。
    前回の座標からregionファイルを特定のときにdiv要素で動的にテキストを書き換えていたが、今回はコントロールを追加する要素を取り入れてみた。
    参考サイトをまとめておく、おそらく参考サイトのほうが需要が高い。

    ━━━━━━━━━━━━━━━━━━━━━━━━━━━
    ■参考サイト
    猫ぐらし-HTML要素を動的に追加・削除する
    http://makisuke.seesaa.net/article/45031561.html

    doli Blog-Javascriptでファイルの位置(パス)を取得
    http://blog.doli.jp/blog/2014/post984/

    データバックアップ用batファイル

    主にminecraftのデータをバックアップするときに使っているbatファイルの解説をします。
    (単純なファイル群のバックアップ命令分なのでもちろんほかの用途にも使えます。)

    ●ダウンロード

    ffbackup1.bat
    14/07/14
    * 初公開
    * コメント文に補足書き足し(Shift_JIS)

    ffbackup1.bat
    http://www.mediafire.com/view/0q9bjnnbq9p9en3/ffbackup1.bat



    ●batファイルとは?

    バッチファイル(Batch File)は、Windowsで複数の処理をまとめて実行する際に使われるプログラムファイル。
    http://ykr414.com/dos/bat.html


    ●batファイルの作り方
    1. メモ帳などを開く
    2. 名前を付けて保存
    3. 「ファイルの種類」を「すべてのファイル」に変更
    4. 適当な名前を打ったあとに「.bat」と入力する
    5. 保存

    ●batファイルの実行方法
    ダブルクリック

    ●データバックアップbatファイルのソースと設定例と解説

    ○ソース

    set time2=%time: =0%
    xcopy "コピー元アドレス" "コピー先アドレス %date:~0,4%%date:~5,2%%date:~8,2%_%time2:~0,2%%time2:~3,2%" /I /E /H /C


    ○設定例

    コピー元アドレス:C:\minecraft\main_newlauncher\1.6.4-Forge9.11.1.965\.minecraft\saves\New World-
    コピー先アドレス:C:\minecraft\backup\IM1.6.4-Forge9.11.1.965\world


    set time2=%time: =0%
    xcopy "C:\minecraft\main_newlauncher\1.6.4-Forge9.11.1.965\.minecraft\saves\New World-" "C:\minecraft\backup\IM1.6.4-Forge9.11.1.965\world %date:~0,4%%date:~5,2%%date:~8,2%_%time2:~0,2%%time2:~3,2%" /I /E /H /C


    この設定でbatファイルを実行した場合

    コピー元アドレス"C:\minecraft\main_newlauncher\1.6.4-Forge9.11.1.965\.minecraft\saves\New World-"以下のフォルダ・フォルダ内ファイルすべてがコピー先アドレス"C:\minecraft\backup\IM1.6.4-Forge9.11.1.965\world YYYYMMDD_hhmm"以下に保存されます。
    ※YYYYなどは年月日時間など

    minecraft_batfile1.jpeg

    コンフィグフォルダのみを保存したい場合は
    コピー元アドレス:C:\minecraft\main_newlauncher\1.6.4-Forge9.11.1.965\.minecraft\saves\New World-\config
    などなど


    ○解説

    set time2=%time: =0%
    ::現在時刻の半角スペースを0に置き換えして変数time2に代入

    xcopy "コピー元アドレス" "コピー先アドレス %date:~0,4%%date:~5,2%%date:~8,2%_%time2:~0,2%%time2:~3,2%" /I /E /H /C
    ::xcopy命令分は指定フォルダ以下の構造をすべて指定アドレス以下にコピーする
    ::指定アドレス+半角スペースの後にtime2に取得したbatファイル実行時刻を代入する

    ○xcopy命令分オプション補足

    /I コピー先のディレクトリが存在しない場合は新規にディレクトリを作成する
    /E ファイルが存在しなくてもディレクトリごとコピーする
    /H 隠しファイルやシステムファイルも全てコピーする
    /C コピー時のエラーを無視する


    ●参考
    つれづれ日記 -DOSバッチで日付・時刻の取得-
    http://d.hatena.ne.jp/ymaru/20071123/p1

    コマンドプロンプト Windowsの便利な使い方 ファイル操作 → xcopy-
    http://www.k-tanaka.net/cmd/xcopy.php

    -xcopyでファイルをバックアップする-
    http://www.atmarkit.co.jp/fwin2k/win2ktips/446xcopy/xcopy.html