自動化でラクをしよう

面倒な事はやらない!

面倒な仕事はコンピューターにやらせて、人間はラクをする。
これがプログラマーのあるべき姿です。

うっとうしい作業も、自動化すれば一瞬で片付けられます。
例えば

条件に合ったファイルを検索して、一気に変換し、サーバへアップロードする。

こういった複数の作業も自動化で瞬殺できます。

できること、いろいろ

ちなみに私は、以下のような操作を自動化してラクしてます。

  • オンラインゲームの起動&ログイン
  • よく使うソフトをまとめて起動
  • アップロード操作の自動化
  • VisualStudioを起動せずにソースをビルドする
  • 複数ファイルを一気に変換
  • ワンキーでリモートログイン&ビルド
  • Excelファイルのオート編集などなど

一回自動化すれば、何度でも実行できるので大変便利です。

自動化の選択肢は2つある

では、どんな言語や技術を使うか?
ですが、大きく分けて2つの選択肢があります。

OSに搭載された機能 バッチファイル , シェル , オートメーターなど
軽量言語(スクリプト) Python , Ruby , JavaScriptなど

私はというと、両方使ってます。
まずどっちで作成するか検討して、とにかくラクな方を選ぶ感じですね。

さて、このページでは基本で手軽な前者を扱いたいと思います。
インストール不要で始められるので、何かと便利なのも理由です。

その中でも定番の バッチファイル Windows PowerShell を紹介します。

Windowsコマンドプロンプト ポケットリファレンス

Amazonで[Windowsコマンドプロンプト ポケットリファレンス]の詳細を見る
Windowsコマンドプロンプト ポケットリファレンス

まず歴史ある自動化の定番バッチファイルです。

バッチファイルとは、Windows(DOS)のコマンドを指定した順に実行させるファイルです。
これを作れば処理を1つのファイルにまとめられ、ちまちまコマンドを打つ必要が無くなります。

そしてバッチファイルのメリットは、ズバリお手軽さです。
テキストエディタでパパパッと書いて、即実行!

いちいち開発環境を起動する手間もありません。
だから簡単な処理なら、私はバッチファイルをよく使います。

そのバッチファイルを作る時、手元にあると便利なリファレンスが本書です。
なおタイトルに「ポケット」と付いてますが、なかなか分厚いです(笑)。

命令を検索しやすい構成で、解説も詳しく具体的な書き方がよく分かります。

また(分厚いだけに)情報量も豊富で、私の場合バッチファイルはこれ一冊で全て賄えています。

Windows PowerShell ポケットリファレンス

Amazonで[Windows PowerShell ポケットリファレンス]の詳細を見る
Windows PowerShell ポケットリファレンス

最強の自動化手段

バッチファイルはお手軽で便利なのですが、ときどき使いにくい事もあります。
長い歴史がある反面、現在では不便に感じる仕様もあるわけです。

例えばバッチファイルは 条件分岐・繰り返し といった、プログラム的な動作が苦手です。
(いちおう可能ですが、正直つかいにくい…)

その欠点を補えるのがWindows PowerShellです。

これは要するに、Windowsを操作する本格プログラミング言語(スクリプト)です。

凄いことに.NET Framework(C#やVBのあれ)が使えるので、正直なんでもできます。
当たり前ですが、バッチファイルで出来る事は全部可能です。

さらに特筆すべきなのは、macOSやLinuxでも動きます。

リファレンスで設計思想も分かる

そんなPowerShellのリファレンスとして、便利なのが本書です。

例によって「ポケット」ですが分厚いですね…
とはいえ、ボリューム十分な内容は嬉しいです。

コマンド解説だけでなく言語仕様の解説も多いので、設計思想を理解しながら利用でき、習得を大きく助けてくれます。
ただ書き方を真似るのではなく、背景の技術を知っておくと、後々に歴然とした差となって現れます。

ただ注意点があり、本書は対応バージョンが3.0になっています。
本記事の執筆時点で、PowerShellの最新バージョンは5.0ですが、まだ対応していません。

当面はその点に注意しつつ、改訂版を期待しましょう。

自分のナイフを磨け

私は長年に渡って、VisualBasicScriptという言語で自動化をしてましたが、悲しい事にオワコン化が進んでます。

とはいえ嘆いても仕方ないので、今はバッチファイルPowerShellと仲良くしつつ、Pythonも便利なので浮気してます。

それはさておき、プログラマにとって自動化スキル十得ナイフのようなもの。
使いこなせば、作業効率は大幅にアップします(本当に)。

切れ味バツグンだからこそ、真っ先に取り組んで欲しいと思う事柄です。

最初は書くのが面倒かもしれませんが、必ず大きなリターンが得られますよ。

Windowsコマンドプロンプト_ポケットリファレンス

9.6

分かりやすさ

9.5/10

情報量

10.0/10

コストパフォーマンス

10.0/10

普遍性

9.0/10

Points

  • 必要な事柄が探しやすい
  • 命令やコマンドの解説が詳しい
  • 実行結果の例も分かりやすい
  • 豊富な情報量

Notes

  • ポケットには入らない
  • バージョンに注意
  • オワコン化しない事を祈ろう

Kuniaki Ebata 登録者

大学中退(文系)の専門卒 日本で唯一のプログラミング書籍評論家 プログラマーで現役のスキー国体選手です 頭と体を動かすのが大好きなフレンズなんだね 専門学校で先生もやってます プログラミングは21歳から 貴族じゃない独身 持病:重度うつ病(薬とサポートのおかげで何とか生きてます) 教え子をゲーム業界へどんどん送り込み、世界を面白くする野望を実現中 プログラミングが上達するメルマガやってます ここを見たゲーム業界の卒業生へ 新作が出たら、連絡するか現物を送ってくれると嬉しいです ただし18禁・CERO-Dの場合は、厳重に梱包の上、品名をパソコン部品にて送る事(だいじ) このページが参考になった方へ ぜひSNSやブログでシェアして欲しいです お願いします(少し上にボタンあります) 最近Google先生が中身の無い「いかがでしたか?」サイトを優遇するので困っています助けて下さい(>_<) シェアしてくださった方には 小冊子 プログラミング書籍が10倍わかる読み方(pdf) を差し上げます こちらからご報告頂くか、こっそりDMを送って下さい