いろいろな仕事を渡り歩き、今はインフラ系エンジニアをやっている。いろんな業種からの視点も交えてコラムを綴らせていただきます。

会社のサーバに散在している.batファイルを片っ端から削除したい。いや、マジで。

»

■なんだよ、このゴミbatは。

 とある会社にある某サーバのDドライブなんだが、「○○用」、「○○作業」とか書かれたフォルダが大量にある。その中には、何に使ったのか分からないbatファイルが大量にある。数年間使用された形跡がない。こういうゴミbatは多くの現場で見てきた。

 率直なところ、batファイルを書き散らかす人とは仕事をしたくない。「簡単だから」という理由は分かる。だが、「簡単」を理由にbatファイルを書く人は、「簡単」だけでなく、「安易」に行動しやすい。その安易さを仕事の速さと勘違いしていることもある。故に考えが浅い。

 bat使うのはいいのだが、ぶちまけるな。あと、使わないならサーバから消せ。再利用したいなら、メモ書きでもいいから情報残せ。batしか書かない人に限って、こういうお行儀の部分が悪い。bat書くなら責任を持て。

 何度かコラムには書いているが、不要になったものを消せないというのは、重要度が把握できていないからだ。何が必要で何が不要か分からないと、サーバにゴミbatが増える。実際問題、サーバにbatファイルを残しておいたら、再利用の際にサーバで編集するだろう。それもいかがなものだろうか。

■サーバを勝手に個人用ストレージにするな、こんにゃろう。

 ファイルを消すのは勇気が要る。大概の人は、勇気ある決断より、とりあえず保存という選択肢を選ぶ。安易にファイルを消すことのデメリットは語る間でもないだろう。だが、安易にファイルを残すことのデメリットはあまり認識されていない。

 厄介なのは、みんなが安易にとりあえず保存という選択をするので、そういうものだと思い込んでいることだろう。デメリットは大きいが、「そういうものだろ」という認識だ。なので、不利益に気付けない。

 そもそも、要らなくなったファイルを消すという勇気ある行動に何の意味があるのだろうか。目に見える結果は見た目がきれいになるだけだ。しかし、ファイルを消す根拠を考えることで、必要不要の切り分けがつく。行動を起こした人の思考は格段に整理される。

 業務をする上で、何が必要で何が不要かを切り分けることは重要だ。これができないと、サーバに余分なファイルが増えて、結果的に個人用ストレージのようになってしまう。消すのが怖いなら、せめてローカルかファイルサーバに移せ、こんにゃろう。

■自分で書いたbatがどういうものか把握してるのか、己に問え!

 batファイルというのは気軽に書ける。大した知識が無くても、コマンドをコピペするだけで書ける。確かに書くのは簡単だ。だが、再利用は難しい。batファイルを再利用するには、仕組みではなく手段が重要になる。

 つまり、簡単にかける分、きめ細かく管理しないと役に立たないゴミになるということだ。これはExcelで作るファイルにも言えるが、簡単に作れる分、管理にコストがかかるということだ。簡単に書けるからこ仕事が早く済と思うのは浅はかだ。

 そして、batでは複雑な処理が書けない。自動化をしようとしても、中途半端にしか実現できない。関数が使えないので、基本、コードのコピペに頼ることになる。処理が複雑になると詰みやすい。データの整形に関しては全く使えない。

 batファイルは短い処理には便利だが、長い処理には向かない。batファイルしか書けない程度のスキルでは、手順の自動化はできなので属人化しやすくなる。実際、そういう人は手数と慣れだけでしか対応できない。効率化が問われる業務はこなせないだろう。

■クソbatの活用方法

 安易に書き捨てられたクソbatにも、実のところ活用方法はある。クソbatを分析することで、前任者の仕事のやり方や現場の傾向がよく分かる。野生動物の生態調査でフンを調査するのと同じだ。

 まず、だいたいのbatファイルには分岐条件が書かれていない。分岐条件を書くレベルの思考があるなら、PowershellやらPerlやら別の手段を取っている。batファイルの名前に"old"とかついていたら、必要不要の切り分けが甘いことが読み取れる。ファイル名や実行するフォルダに日本語名がついているなら、コーディングの知識が浅いことがうかがい知れる。

 クソbatを分析すれば、書いた人や現場の傾向を知ることができる。そこから足りないものを補っていけば円滑に事を進めることができる。クソをそのまま動かすより、分析した情報を役に立てよう。修正するだけの腕に自信が無いなら、batの中身をよく読んでいてドキュメントを書こう。多くの疑問が沸くので、一つ一つ、地道に答を出していこう。そうすれば、目の前のクソbatより良いものが書けるスキルくらいすぐに身につく。

 とりあえずまとめだ。簡単な手段を選んでも、事を成し遂げるには一定のスキルが必要だ。クソbat書いてる暇あったら根本的なスキルアップをしよう。とはいっても、コーディング力だけがスキルじゃない。足りないコーディング力はドキュメントや整理能力で補える。こういう能力は、要らないファイルを消したり、記録を整理する後処理で鍛えることができる。要らないファイルを消すまでが仕事だ。これをやらないと、どうしても仕事のツメが甘くなる。

Comment(7)

コメント

lav

ばっちいファイル、、、

匿名

自分のブログにすら書いてもなんだこいつと思われるゴミ文をよくメディアにかけるなこのアホは。

Anubis

> lav さん
座布団一枚。

Anubis

> 匿名さん
そりゃそうだよ。なんだこいつと思われるくらいの文章で書いているので。
凡な文章ならメディアに書く価値は無い。

・・・で、どこがアホなんだい?
それも説明できずにコメントを付けるなら、安易と言わざるを得ない。
仕事もそういう姿勢で取り組んでるんじゃないかな。己を振り返ることをお勧めするよ。

ぽんかん

BATファイル、メモ帳で開いて中見たらだいたい何やってるかわかるし、不要か必要かすぐわかると思う。

しまりす

ウチの会社はそもそもバッチファイル書く人(かける人)がいないから安心・・・?w

pekos

あぁ、excelとBATは仲良しだから、結果職場のPCに散在する。
エラーですぐに止まるマクロにわけわからんバッチがくっついている。
それらを作り直す不毛はいつまで続くのだろう。

コメントを投稿する