[ホーム] - [Windows 10 FAQ 一覧] - [Windows で Linux のbash シェルを動かす簡単な方法]



作成日:2018/04/12
更新日:2018/05/01
対象:Windows 10

Windows で Linux のbash シェルを動かす簡単な方法




【目次】


目的


Windows ではバッチ(*.bat)やpowershell (*.ps1)がシェルとして実行可能です。一方でデフォルトでは Linux 系のシェル (*.sh など)は実行できません。
もしどうしても動かしたい場合には cygwin などの Linux 互換シェルか Windows10 なら BoW(Bash on Windows) を使用します。BoW はWindows の大型アップデートで有効になった機能です。

本ページでは cywgin で shell を入れる方法を紹します。

導入、インストール方法


cygwin は以下のサイトからダウンロードが可能です。

https://www.cygwin.com/


基本ディレクトリ


cygwin 環境では C:\cygwin\home\<Windowsユーザ名> が ホームディレクトリ (~/) として利用されます。

(*)ただし初回ログイン前は C:\cygwin\home がホームとなるようです。初めて cygwin 環境にログインすると C:\cygwin\home\<Windowsユーザ名>が作成されるようです。


シェルはここに配置する。 ~/ でアクセスできる


その他 Windows 上とシェル上の違いは以下の通りとなります。

【Windows上】
C:\cygwin\home\test.sh


【cygwinのbash上】
~/test.sh


ホームディレクトリは以下となります。


【Windows上】
 C:\cygwin

【cygwinのbash上】
/


Windows から .sh を実行する


Windowsのバッチなどからは以下で シェルの実行が可能です。


c:\cygwin\bin\bash.exe ~/test.sh



(注意)

C:\cygwin\home\<Windowsユーザ名> に設置したシェルは Windowsからは直接実行できないようです。以下のエラーが発生します。


C:\cygwin\home\Administrator>.\test.sh
アクセスが拒否されました。




改行コード



.sh の改行コードは "LF" あるいは"CRLF"となります。

改行コードが"CR"のみだとシェル実行時に以下のエラーとなるようです。とくにWindowsのエディタ使用時には注意してください。


/home/Administrator/test.sh: line 1: $'\recho': command not found




参考:
バッチ と シェルの違いは
Bash on Windows まとめ
Windows 10 bash をインストールする簡単手順


最終確認日は2018年3月です。仕様は変更になる可能性があります。






(ご注意) 本サイト内の内容を使用して発生したいかなる時間的損害、金銭的損害あるいはいかなる損害に対して、いかなる人物も一切の責任を負いません。あくまでも個人の判断で使用してください。 本ページは独自に調査をしたアンオフィシャル(非公式)な内容です。内容に誤りがある可能性や仕様変更により内容が不正確になる可能性があります。 本サイト内掲載されている情報は、著作権法により保護されています。いかなる場合でも権利者の許可なくコピー、配布することはできません。 このページはリンクフリーです。(このページへの直接リンクも可能です。)


Copyright(c) TOOLJP.COM 1999-2024

[Windows 10 FAQ 一覧に戻る]