Yaleで、遊んで学ぶ日々。
Yaleで、遊んで学ぶ日々。
囲碁、ときどきプログラミング、ところにより経済。
×
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
昨日インストールしたlatex用のフォントやパッケージのインストールプロセスを自動化するバッチファイルを書いた。PCを買い換えたり、latexをまるごと入れなおしたいときなどに使う予定。これからもインストールするパッケージの数は増えていきそうだから、随時更新していく予定。そうすると、インストール手順のメモ代わりにもなる。
バッチファイルの仕組みも大分わかるようになってきた。
if ... goto バグの恐怖を味わった。
普通プログラミングの授業とかでは、if ... goto という条件分岐の書き方は発見しにくいバグを生みやすいから避けるように教えられるけど、バッチファイルでは結構使われるらしい。甘く見ていたら、同じ命令が二度繰り返されるバグが発生して発見に時間を食った。つまり、
...
...
if A goto B
...
...
:B
...
...
exit /b
っていう感じのプログラムで、これだと Bの作業は2回繰り返されてしまう。避けるためには、
...
...
if A goto B
...
...
exit /b :: <- これ
:B
...
...
exit /b
という風に、2度目のBの前にexit /b を入れて、そこでプログラムを終わらせてしまえばいい。
バッチファイルの仕組みも大分わかるようになってきた。
if ... goto バグの恐怖を味わった。
普通プログラミングの授業とかでは、if ... goto という条件分岐の書き方は発見しにくいバグを生みやすいから避けるように教えられるけど、バッチファイルでは結構使われるらしい。甘く見ていたら、同じ命令が二度繰り返されるバグが発生して発見に時間を食った。つまり、
...
...
if A goto B
...
...
:B
...
...
exit /b
っていう感じのプログラムで、これだと Bの作業は2回繰り返されてしまう。避けるためには、
...
...
if A goto B
...
...
exit /b :: <- これ
:B
...
...
exit /b
という風に、2度目のBの前にexit /b を入れて、そこでプログラムを終わらせてしまえばいい。
PR
Calender
12 | 2025/01 | 02 |
S | M | T | W | T | F | S |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Search in This Blog
Latest Comments
[03/30 川内のばば山田]
[03/30 川内のばば山田]
[08/06 Aterarie]
[07/05 Agazoger]
[07/01 Thomaskina]
Latest Posts
(11/16)
(04/28)
(04/16)
(04/11)
(04/05)
Latest Trackbacks
Category
Access Analysis