コンテンツにスキップ
PR

業務自動化で使う言語

自動化では、対象作業、実行場所、入力データ、失敗時の扱いを先に分けます。Python、Shell、PowerShellなどの言語選びはその後です。個人PCの補助作業と、チーム・本番環境で定期実行する処理では、権限、ログ、通知、変更管理に必要な水準が異なります。

  1. 手作業の入力・出力・例外を短い手順として書き出す
  2. 読み取りだけの小さな処理で結果を照合する
  3. 実行時刻、使用する資格情報、ログ保存先、失敗通知を決める
  4. 書き込みや削除を伴う処理は、テストデータと復旧手順を用意してから有効にする
  • OS上の既存コマンドをつなぐなら Shell / PowerShell
  • データ整形・API連携・テストを組み合わせるなら Python
  • 既存業務製品内で完結するなら、その製品のスクリプト・ワークフロー機能

どの場合も、秘密情報をコードや共有ログに残さず、公式の実行環境・認証方式を確認してください。

PC上の作業、ファイル処理、API連携はPython、Linux運用はBash、配布するCLIはGoが候補です。

  • Python
  • Bash
  • JavaScript
  • Go
目的見るポイント
早く作る公式ドキュメント、サンプル、既存資産
長く保守する型、テスト、パッケージ管理、採用しやすさ
学習する最初の成功体験、教材、開発環境

追加調査で押さえる実務ポイント

業務自動化で選ぶべき言語は、人気ではなく「どの画面・ファイル・API・OSを操作するか」で決まります。CSVやExcelの整形ならPython、Windows操作ならPowerShell、Web画面ならJavaScript、シェル処理ならBash、AutoCADならAutoLISPが候補です。最初に入力、実行場所、権限、失敗時の戻し方を決めてください。

条件から選ぶ

作業候補
CSV・ExcelPython
Windows管理PowerShell
Linux・サーバーBash
Web・Node.jsJavaScript
AutoCADAutoLISP
高速CLIGo / Rust
SQL集計SQL

自動化の分類

ファイル処理、API、GUI操作、OS管理、業務製品内言語に分けます。GUI自動化は画面変更、解像度、フォーカス、MFAに弱いため、APIやCSV、CLIがある場合はそちらを優先します。

最小例

from pathlib import Path

for path in Path("input").glob("*.csv"):
    print(path.name)

入力はCSVファイル、出力はファイル名一覧です。実際に変更する前にコピーとログを用意します。

言語より先に決めること

トリガー、入力、出力、件数、頻度、認証、エラー、再実行、監査、ロールバックを決めます。

比較

条件言語ノーコード
複雑な分岐強い限界あり
可視化工夫必要強い
バージョン管理強い製品依存
非技術者運用弱い強い
大量処理設計可能上限確認

安全な導入

手作業を記録し、読み取り専用で試し、10件でテストし、差分を出してから書き込みます。冪等性、失敗通知、戻し方を確認します。

よくある失敗

二重実行、日付変換、先頭ゼロ消失、文字コード、API制限、認証期限、上書き、途中成功、エラー無視、属人化です。

参考リンク