コミュ障だから明日が僕らをよんだって返事もろくにしなかった

何かを創る人に憧れたからブログをはじめたんだと思うよ

"月" 曜日最高!

月曜日ですね

みなさま待望の月曜日です。ええ、言わなくてもわかります。
月曜日だという事実に気づき、心躍り胸高鳴っていることは画面越しからでも伝わってきます。これから一週間が始まる!頑張ろうという意欲湧いてきますね。


バイナリデータをいじってみる(batファイル編)

どうあがいてもそんな気持ちになれないので、バイナリエディタを使って「月曜大好き」文章をつくることをやっていきます。ええ、捏造とか記憶改変とかそういうやつです。結果的に「月曜大好き」という気持ち(文章)になればそれでいいのです、ぐへへへ……。


 ~ 前回のお話

 "月" 曜日最高 - コミュ障だから明日が僕らをよんだって返事もろくにしなかった

 バカなことをやっていますが、また相も変わらずバカなことをやっていきます。

準備編

今回もバイナリエディタ Stirlingを使っていきます。

それではさっそくいじって行きましょうといきたいところですが、いじるデータを作ってないのでパパっと作っていきます。

@echo off
echo 日曜日最高
echo 月曜日最低
rem ループ: /L %%[変数]in([初期値],[増分],[終了値]) do([処理])
for /L %%i in (1,1,3) do (
    echo 月曜日最低 >> 月曜大嫌い.txt
)
pause

今回はこのデータ(.bat)をいじっていきます。いわゆるバッチファイルです。
テキストをいじるよりも命令をいじった方が面白いと思ったので、今回はこいつを「月曜大好き」プログラムに洗脳していきます。

■雑な解説
エディタで適当に弄る前にまずはこのプログラムの雑な解説をしようと思います。
① @echo off
 画面に余計な出力をしないようにしてる(今回はいじりません)
② echo [文字]
 画面に[文字]を表示
③ rem [コメント]
 プログラムの処理に関係ないコメントを記入できる。
 @echo offをしてないと、画面に出てくるらしい。
④ for
 繰り返しの処理。書き方はコメントにある通りです。
⑤ >>
 比較…ではなく。左の結果を右のファイルに書き出すことをやってます。
⑥ pause
 なにかボタンを押すまで待つ命令

実行した時の内容は「日曜日最高」「月曜日最低」が画面に表示され、月曜日最低と3回書かれた月曜日大嫌いのテキストファイルが生成されるといったものとなります。

これで準備完了です。それでは改ざんしていきましょう。

月曜日最高

今回は月曜日最高に書き換え、日曜日最高はコメントアウトし、月曜日最高と10回繰り返されるように改ざんしていきます。

まずはバイナリエディタを開きます。
文字コードが一致していると右にそのまま表示されるんですね。
それでいじっていきます。開いたデータををこうした感じでいじっていきます。
f:id:andron:20161231130234p:plain
普通に文字の書き換えをしているだけなので、工程は省略。赤字の部分が変更を加えた箇所です。

書き換えたあとの、実際のバッチファイルはこんな感じ。

@echo off
@rem 日曜日最高
echo 月曜日最高
rem ループ: /L %%[変数]in([初期値],[増分],[終了値]) do([処理])
for /L %%i in (0,1,9) do (
    echo 月曜日最高 >> 月曜大好き.txt
)
pause

さあこれで実行して確かめしてみると…。
f:id:andron:20161231124909p:plain

そして、新たに生成された月曜日大好き.txtに「月曜日最高」が10回繰り返して表示されました。
やった、月曜日最高!

さあ、今日も張り切って行きましょう。