[ホーム] > [間違えやすい類語 IT編一覧] > [バッチ と シェルの違いは]
このページではバッチファイル(bat file) とシェル(shell) の違いに関して説明します。
このページでは「狭義」の意味での「バッチファイル」「シェルスクリプト」を説明します。広義の意味ではニュアンスが全くことなる点に注意してください。
共にテキストファイル(text file)として記載されたプログラムであることは同じです。バッチファイルは90年代のWindows から使用されていた簡単なプログラムです。シェルスクリプトはこれも古いUnix時代から使用されていたテキストベースのプログラムです。
2021年11月15日追記
Windows には バッチファイルの後継として"Windows Powershell"があります。これはどちらかというと"シェルスクリプト"といえるでしょう。
(注意)分かりやすく簡単に記載しており、一部の環境や分野では記載内容が異なる可能性があります。あくまでも参考程度でお読みください。
説明 | バッチファイル(batfile) | シェルスクリプト(shell script) |
概要 | Windows で使わる処理を記載したファイル。 | シェルでの動作を記載したファイル。 |
拡張子 | *.bat *.cmd など | *.sh *.bash など |
主な目的 | コマンドプロンプト上での処理をファイルにまとめて記載して一気に実行する。 | シェル上での処理をファイルにまとめて記載して一気に実行する。 |
主なプラットフォーム | Windows | 主にUNIX系(Linuxなど) (ただし最近のWindows ではWSLにより シェルが簡単に実行できるようになりました。) またWindows にはバッチファイルの後継である"Powershell"があります。これはどちらかというと"シェルスクリプト"に分類されるでしょう。 |
例: | @echo off mkdir testdir if %ERRORLEVEL%==1 echo "ディレクトリエラー" | #!/bin/sh for file in `\find . -maxdepth 2 -type f`; do echo $file >> out done |
その他 | Windows 3.1やWindows 95からの古い技術。現在では powershell がメインとなりつつある。 | 現在でもスクリプトの記載としてよく使用される。 |
関連リンク:
シェル、コンソール、端末、コマンドラインの違いを比較表で解説
[ホーム] > [間違えやすい類語 IT編一覧]
,