新しいタスクを作成しました
{バッシュ}
私のホームディレクトリを渡しました
/ dir "C:\ Users\TMB \"
アプリケーションとしてbashを追加しました
C:\ cygwin\bin\bash.exe
Bashを開くと、基本的なUNIX/Cygwinユーティリティを使用できません。 Cygwin Bashを実行するようにConEmuを構成するにはどうすればよいですか?
これは他の人を助けるかもしれません。
ConEmuのバージョン140310がCygWin Bashを自動的に検出するようです。
ConEmuをインストールした後にCygwinをインストールした場合は、タスクのリストをReload ...する必要があります。
事前定義されたタスクのリストのオプションの1つとして{CygWin bash}が表示されます。
PS-この方法が機能しない場合は、ConEmu設定をリセットしてみてください(下部にあるReset ...ボタンをクリック設定ウィンドウ)
またはの代わりに
C:\cygwin\bin\bash.exe
使用する
C:\cygwin\Cygwin.bat
Bashが$PATH
の適切な値を受け取っていることを確認してください。通常はそれを呼び出すものから継承しますが、ConEmuはWindowsアプリケーションであるため、提供するのは%Path%
に設定したものだけです。通常、これにはCygwinパスディレクトリが含まれていないため、Bashはls
、&cを探す場所がわかりません。
私がこれを解決する方法は、ConEmuがそうするために提供するあらゆる手段を介して、--login -i
をコマンドライン引数としてBashに渡すことです。これにより、インタラクティブログインシェルとして実行していることが通知されるため、起動時に/etc/profile
、~/.profile
、~/.bashrc
が読み取られます。私の経験では、これで十分な$PATH
を得ることができました。それがうまくいかない場合は、PATH=/bin:/usr/bin:/usr/local/bin:[...]:$PATH
の~/.bashrc
のような行で明示的に指定できます。
これが私のやり方です
次のコマンドでConEmuに新しいタスクを作成します
set HOME=C:\Home & "C:\Home\Applications\cygwin64\bin\mintty.exe" -i /Cygwin-Terminal.ico -
それはかなり古い質問ですが、とにかくこれを共有したいと思います。
特定の作業ディレクトリ内でbashを開始するには、たとえばコマンドをSET CHERE_INVOKING=1 & "C:\cygwin\bin\bash.exe --login -i" -cur_console:t:"cygwin terminal"
に設定し、説明されているように/dir "..."
を介して作業ディレクトリを指定します here 。
bash
や他のシェルからだけでなく、実行方法に関係なくcmd
からCygwinコマンドを使用できるようにするには、Path
環境変数にCygwinのbin
ディレクトリが追加されました。Control Panel > System and Security > System
(標準のホットキーWin+Pause
)、次にAdvanced system settings > Environment variables
に移動します。すべてのユーザーについて、システムのPath
変数を編集します。ユーザー専用です。ユーザーのPath
変数を編集します(存在しない場合は作成します)。cygwin
がC:\cygwin
(64ビットCygwinの場合はcygwin64の可能性があります)にインストールされていると想定して、Path
にC:\cygwin\bin
を追加します。 system Path
変数を使用する場合、Cygwinのbin
を最初に追加すると、一部のCygwinのコマンドは組み込みコマンドをシャドウします(たとえば、Cygwinのfind
はWindowsの代わりに使用されますfind
)。私はそうしたいのですが、そうしない場合は、Cygwinのbin
をPath
の最後に追加します。
他のほとんどの回答でもConEmuのセットアップについて説明しているので、私も個人的な意見を述べます。
ログインしていないシェルを実行したい。たとえば、Linuxでは、テキストコンソールまたはsshを介してログインするとログインシェルを取得し、ターミナルエミュレータ(xterm、konsoleなど)を開くと非ログインインタラクティブシェルを取得します。
私の{Bash}タスクには、作業ディレクトリを現在のタブの作業ディレクトリに設定するための/dir "%CD%"
タスクパラメータがあります(たとえば、bashタスクがFarの場合)。 bashを開始するコマンド:%ConEmuDrive%\cygwin\bin\bash.exe -new_console:C:"%ConEmuDrive%\cygwin\Cygwin.ico"
--login -i
オプションが省略されていることに注意してください。シェルは非ログインインタラクティブシェルとして起動します(非オプションの引数がなく、-cオプションがないため、stdinとstdoutが端末に接続されているため、INVOCATIONセクションを参照してください)詳しくはbashのマンページをご覧ください)。これは、ユーザーrcfile ~/.bashrc
からコマンドを読み取って実行します(ログインシェルのように/etc/profile
または~/.bash_profile
ではないため、set CHERE_INVOKING=1
は必要ありません/etc/profile
に関して)。したがって、ユーザーエイリアス、シェルオプション、追加の環境変数などを〜/ .bashrcに配置します。