[トップページへ] [Windows 10 FAQ 一覧に戻る]

対象: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-2018

[Windows 10 FAQ 一覧に戻る]