「ファイルのバックアップを毎日自動で取りたいが、スクリプトの書き方がわからない」「ログを定期的に削除する処理をWindowsで自動化したいが、PowerShellがよくわからない」
こうした悩みを抱えるビジネスパーソンが急増しています。実は、ChatGPTやClaudeにお願いすれば、PowerShell・Bashスクリプトをプログラミング知識ゼロでも作れる時代になっています。
この記事では、AIを使ってPowerShell・Bashスクリプトを自動生成する方法を、コピペで使えるプロンプト例とともに解説します。ファイル操作・バックアップ・ログ整理といった実務でよく使うタスクを中心に、ゼロから動くスクリプトを作るまでのステップをカバーします。
AIによるスクリプト自動作成とは?
PowerShellはWindows向けのスクリプト言語、BashはLinux・macOS向けのシェルスクリプト言語です。どちらもファイル操作・プロセス管理・定期実行(タスクスケジューラ・cron)などのシステム管理タスクを自動化するために使われます。
従来、これらのスクリプトを書くには数十~数百時間の学習が必要でした。しかし今は、AIに「やりたいこと」を日本語で説明するだけで、コピペしてすぐ動くスクリプトが数秒で生成されます。
Before(AI活用前):スクリプトを書けるエンジニアに依頼 → 2週間待ち → 修正依頼 → さらに1週間
After(AI活用後):ChatGPTに日本語で依頼 → 5秒でスクリプト生成 → コピペして動作確認 → 完成
プログラミング経験がなくても、「何をしたいか」を具体的に説明できれば、AIが実行可能なスクリプトを書いてくれます。エンジニアに依頼する前に自分でたたき台を作れるようになるだけで、開発コスト・待ち時間を大幅に削減できます。
具体的な使い方(ステップバイステップ)
1. AIに依頼する前の準備
スクリプト生成の精度を上げるために、依頼前に以下の情報を整理しておきましょう。
・OS環境:Windows(PowerShell)かLinux/macOS(Bash)か
・対象ファイル・フォルダ:パス、拡張子、対象範囲
・処理内容:コピー、削除、移動、圧縮、検索など
・実行タイミング:手動実行か定期実行か(定期の場合は頻度)
・エラー時の動作:ログに記録する、通知するなど
「Cドライブの特定フォルダにある30日以上経過したファイルを削除したい」のように条件が明確なほど、AIの回答精度が格段に上がります。
2. プロンプトの書き方(スクリプト生成依頼)
以下のテンプレートをそのままコピーして、状況に合わせて書き換えてください。
【Bashスクリプト依頼テンプレート】
あなたはLinuxシステム管理の専門家です。 以下の要件を満たすBashスクリプトを作成してください。 【OS】Ubuntu 22.04 LTS 【処理内容】/var/log/applogディレクトリ内で、 7日以上経過した.logファイルを自動削除する 【実行方式】cronで毎日午前2時に自動実行 【エラー処理】削除成功・失敗をログファイル(/var/log/cleanup.log)に記録する 【注意点】 - 削除前に該当ファイル名をログに出力すること - コメントを日本語で記述すること - set -eを使って安全なスクリプトにすること スクリプト本体と、cronへの登録コマンドも出力してください。
【PowerShellスクリプト依頼テンプレート】
あなたはWindows PowerShellの専門家です。 以下の要件を満たすPowerShellスクリプトを作成してください。 【OS】Windows 11 / Windows Server 2022 【処理内容】D:\Backups フォルダに、 C:\Projects フォルダ全体をZIP圧縮してコピーする ファイル名はバックアップ日時(例: backup_20260715_020000.zip)とする 【実行方式】タスクスケジューラで毎日午前2時に自動実行 【エラー処理】失敗時にC:\Logs\backup_error.logへエラー内容を記録する 【注意点】 - バックアップ後、30日以上経過した古いZIPファイルは自動削除すること - コメントを日本語で記述すること - 管理者権限不要で実行できる形にすること スクリプト本体と、タスクスケジューラへの登録手順も合わせて教えてください。
3. 生成されたスクリプトの確認と実行
AIが生成したスクリプトをそのまま実行する前に、以下の点を必ず確認してください。
・パスが正しいか:フォルダパスが実際の環境と一致しているか確認
・削除系の処理は慎重に:最初は「削除」を「ログ出力のみ」に変えてドライランを実施
・テスト環境で先に試す:本番データに影響が出る処理はダミーデータで動作確認
・わからない部分はAIに質問:「この部分が何をしているか教えてください」と追加質問する
Bashの場合、bash -n スクリプト名.sh で構文チェックができます。PowerShellでは、-WhatIf パラメータを使うと実際の変更なしに動作確認できるコマンドが多くあります。
実務での活用例 ── Bashスクリプト編
AIに依頼してよく使われるBashスクリプトの活用例を紹介します。
活用例1:Webサーバーのアクセスログ自動アーカイブ
「/var/log/nginx のアクセスログを毎月末にgzip圧縮し、/backup/logs/YYYY-MM/ へ移動する」という要件をAIに渡すと、ローテーションスクリプトと月次cronの設定まで一括で生成できます。
活用例2:特定ファイル形式の一括リネーム
「フォルダ内のすべての .jpeg ファイルを .jpg にリネームする」「ファイル名に日付プレフィックスを追加する」といった一括処理は、findコマンドとループ処理を組み合わせたスクリプトをAIが即座に生成します。
活用例3:サービス監視と自動再起動
「Nginxが停止していたら自動的に再起動し、Slackに通知する」というスクリプトも、Slack Webhook URLを渡せばAIが完成形を生成します。cronで5分おきに監視するよう設定すれば、障害対応の初動を自動化できます。
スクリプト実行後にエラーが発生した場合は、エラーメッセージをそのままAIに貼り付けて「このエラーの原因と修正方法を教えてください」と聞くと、即座に修正案が出てきます。エラーログ解析の詳細な手順はAIでエラーログ・スタックトレースを解析する方法で解説しています。
実務での活用例 ── PowerShellスクリプト編
Windowsサーバー・社内PCの管理で役立つPowerShellの活用例です。
活用例1:社内PCへのソフトウェア導入状況確認
「ドメイン内の全PCに特定のソフトウェアがインストールされているか確認し、結果をExcelに出力する」という管理業務を自動化できます。Get-WmiObjectやInvoke-Commandを使ったリモート実行スクリプトをAIが生成します。
活用例2:Outlookメール定期配信
「毎週月曜日の朝8時に、前週の売上データを添付して関係者にメール配信する」という定期レポート配信も、PowerShellのCOMオブジェクト操作で実装できます。依頼時にメール本文の雛形も一緒に渡すと、より完成度の高いスクリプトが生成されます。
活用例3:フォルダ権限の一括設定・監査
「特定の共有フォルダのアクセス権限一覧をCSVに出力する」「新入社員アカウントに対してフォルダ権限を一括付与する」といったActive Directory連携スクリプトもAIが得意とする領域です。
生成されたPowerShellスクリプトをさらに整理・改善したい場合は、AIでコードをリファクタリングする方法のプロンプト術を参考にしてください。
うまくいかないときの対処法
AIが生成したスクリプトで問題が発生した場合の対処法を整理しました。
問題1:スクリプトが意図した動作をしない
対処法:「期待した動作:○○」「実際の動作:△△」「環境:Windows 11 / PowerShell 7.x」という形式でAIに再依頼する。情報が具体的なほど修正精度が上がります。
問題2:エラーメッセージの意味がわからない
対処法:エラーメッセージをそのままコピーしてAIに貼り付け、「このエラーの意味と解決策を教えてください」と聞く。スタックトレースも含めると原因特定が早くなります。
問題3:生成されたコードが複雑すぎて理解できない
対処法:「このスクリプトの各行が何をしているか、日本語でコメントを付けてください」とAIに依頼する。理解したうえでカスタマイズすると応用が利くようになります。
問題4:環境依存のエラーが出る
対処法:「私の環境はPowerShell 5.1(Windows Server 2019)です。このバージョンに対応した書き方に修正してください」のようにバージョン情報を追加して再依頼する。PowerShell 5.x と 7.x では使えるコマンドレットや構文が異なることがよくあります。
本記事のまとめ
AIによるPowerShell・Bashスクリプト自動作成の要点をまとめます。
| やりたいこと | 依頼のコツ | 難易度 |
|---|---|---|
| ファイルの自動バックアップ | パス・頻度・保存先を明示 | 低(初心者OK) |
| 古いログの自動削除 | 削除条件(日数・サイズ)を具体化 | 低(初心者OK) |
| ファイルの一括リネーム・変換 | 対象ファイル形式と命名規則を明示 | 低(初心者OK) |
| サービス監視・自動再起動 | 通知方法(Slack・メール)も伝える | 中(動作確認必須) |
| Active Directory一括操作 | CSVフォーマットとAD構成を説明 | 中(テスト環境推奨) |
AIにスクリプト生成を依頼するときのポイントは、「OS・対象ファイル・処理内容・エラー時の動作」を具体的に伝えることです。最初は小さなタスクから試し、動作を確認しながら徐々に複雑な自動化へ発展させていくのが成功の近道です。
生成したスクリプトをCI/CDパイプラインに組み込む方法は、AIでDockerfile・GitHub Actionsを自動生成する方法で詳しく解説しています。
PR
ChatGPT・Claude・Geminiを業務で使いこなすための実践テクニックを凝縮した一冊。スクリプト生成を含む多様な自動化ユースケースが紹介されており、AI活用の引き出しを増やしたい方に最適です。
