web-dev-qa-db-ja.com

特定のフォルダーでCygwinを開きます

特定のフォルダーでCygwinを開くCygwinショートカットを作成するにはどうすればよいですか?これにより、入力する必要がなくなります

cd /cygdrive/c/Users/Tom/Desktop/

cygwinを起動するたびに。

214
Randomblue

Cygwinをインストールするとき(または既にインストールしている場合は、再度ダウンロードしてセットアップを開始して更新を実行します)、「Shells」カテゴリでchereパッケージを選択してください。

Cygwinの起動後、Cygwinターミナルを(管理者として)開き、コマンドchere -i -t mintty -s bashを入力します。

これで、Windowsの右クリックコンテキストメニューに「Bash Prompt Here」が表示されます。

mintty はCygwinのデフォルト端末です。-tオプションで選択しない場合、「Bash Prompt Here」はWindowsコマンドプロンプトと同じ端末を使用し、水平方向のサイズ変更を防ぎます。)

378
two7s_clash

これが私が使用するものです。 chereパッケージまたはレジストリの調整は必要ありません。 Windows 7で動作します。

「送信先」フォルダーに移動します。

C:\Users\<your_user_name>\AppData\Roaming\Microsoft\Windows\SendTo

Targetフィールドにこれを含むBash Hereという名前のショートカットを作成します。

C:\cygwin\bin\mintty.exe -i /Cygwin-Terminal.ico  C:\cygwin\bin\bash.exe  -l -c "cd \"$0\" ; exec bash"

Windowsエクスプローラーで、フォルダーを右クリックし、Send To > Bash Hereを選択します。

そして、現在のbashディレクトリでWindowsエクスプローラーを開く、逆のトリックがあります。このエイリアスを作成します。

alias winx='/cygdrive/c/Windows/Explorer.exe /e,\`cygpath -w .\`'

注:上記のcygpath -w .部分はバックティックで囲まれています。

Bashプロンプトでwinxと入力すると、Win Explorerがポップアップ表示されます。

注:winxからドキュメントフォルダーに移動する場合は、試してください

alias winx='/cygdrive/c/Windows/Explorer.exe /e,`cygpath -w $PWD`'
92
LindseyD

Cygwinターミナルから、次のコマンドを実行します。

echo "cd your_path" >> ~/.bashrc

.bashrcスクリプトは、新しいbashセッションを開くときに実行されます。上の変更を伴うコード your_path 新しいcygwinセッションを開いたときのディレクトリ。

30
bschwagg

右クリックコンテキストメニューに「ここでCygwinを開く」オプションを配置する.regファイルを作成しました。初期セットアップでインストールしなかった場合、 apt-cyg を使用してインストールできるCygwin "chere"パッケージに依存します。

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Directory\Background\Shell\cygwin_bash]
@="Open Cygwin Here"

[HKEY_CLASSES_ROOT\Directory\Background\Shell\cygwin_bash\command]
@="C:\\cygwin\\bin\\mintty.exe -e /bin/xhere /bin/bash.exe"

Cygwin64またはchereを使用しないインストールの場合、レジストリエントリで次のコマンドを使用できます(パスが原因でウィンドウを想定し、cygwinインストールディレクトリがc:\ cygwin64であると仮定)

C:\cygwin64\bin\mintty.exe /bin/sh -lc 'cd "`cygpath "%V"`"; bash'

ここからダウンロードできるWindows 7および8レジストリファイルで動作します: http://tomkay.me/blog/Cygwin64---Open-Here-18

Windows Registry Editor Version 5.00
; Open cygwin to folder
; http://tomkay.me - Tom Kay

[HKEY_CLASSES_ROOT\Folder\Shell\open_cygwin]
@="Open Cygwin Here"

[HKEY_CLASSES_ROOT\Folder\Shell\open_cygwin\command]
@="C:\\cygwin64\\bin\\mintty.exe /bin/sh -lc 'cd \"`cygpath \"%V\"`\"; bash'"

[HKEY_CLASSES_ROOT\Directory\Background\Shell\open_cygwin]
@="Open Cygwin Here"

[HKEY_CLASSES_ROOT\Directory\Background\Shell\open_cygwin\command]
@="C:\\cygwin64\\bin\\mintty.exe /bin/sh -lc 'cd \"`cygpath \"%V\"`\"; bash'"
17
Tom Kay

そのディレクトリをデフォルトとして使用する場合は、cdステートメントを~/.profileファイルに追加するだけです。

私がしがちなのは、そのメソッドを使用して通常のディレクトリを設定し、一般的なケースのエイリアスも定義することです。

alias tom="cd /users/tom"

またはあなたの同等。これにより、ディレクトリを非常に高速に変更できます。

12
paxdiablo

アイコンを使用して、chereパッケージなしでcygwinを起動します。

  1. デスクトップにcygwin端末のショートカットを作成します。
  2. アイコンをRクリックして、プロパティを選択します。
  3. ショートカットタブで、ターゲットにこれを使用します:C:\cygwin64\bin\mintty.exe -i /Cygwin-Terminal.ico -c 'cd'
  4. START INの場合、cygwinを起動するdir/folderのパスを入力します。すなわちC:\some\dir\name\here
8
Doug

Two7s_clashが言ったように、最初にchereパッケージをインストールし、minttyをセットアップする必要があります。

  1. 管理者としてCygwinターミナルを開きます
  2. apt-cyg install chere
  3. chere -i -t mintty

これで、Windowsエクスプローラー(コンテキストメニュー)でマウスの右クリックで特定のディレクトリのcygwinを開き、[Bash Prompt Here]を選択できるようになりました。

Windowsコマンドプロンプトを使用して、特定のディレクトリからcygwinを開くこともできます。

  1. Windowsコマンドプロンプトを開く
  2. cd)をカスタムディレクトリに移動します
  3. C:\cygwin64\bin\mintty.exe C:\cygwin64\bin\env.exe CHERE_INVOKING=1 C:\cygwin64\bin\bash.exe -lを実行します

    このコマンドは、コマンドプロンプトから取得した現在のディレクトリでcygwinを開きます。

FreeCommander

このコマンドは、FreeCommanderなどのカスタムファイルマネージャーからcygwinを開くためにも使用できます。

FreeCommanderから取得した現在のディレクトリでcygwinを開くには、次を実行します。

  1. ツール->お気に入りツール->お気に入りツールの編集...(Ctrl + Shift + Y)
  2. 新しいツールバー(+アイコン)を追加、ショートカット:挿入

    • 名前:cygwin
    • プログラムまたはフォルダー:C:\cygwin64\bin\mintty.exe
    • 開始フォルダー:%ActivDir%
    • パラメーター:C:\cygwin64\bin\env.exe CHERE_INVOKING=1 C:\cygwin64\bin\bash.exe -l

FreeCommanderからcygwinを開くカスタムショートカットを追加できます。

  1. ツール->キーボードショートカットの定義
  2. 「お気に入りツール01」(または「お気に入りツールN」)までスクロールします
  3. 新しいショートカットキーを割り当てる:使用します Ctrl + Shift + T

素晴らしいリファレンス: MinTTY Wiki、記事のヒント:特定のディレクトリで開始

8
nexayq

自分で選択したディレクトリでCygwinターミナルを起動するWindowsショートカットを作成するには、次を試してください。

  • Windowsデスクトップを右クリックし、「新規」を選択してから、「ショートカット」を選択します。

  • アイテムの場所として、次のテキストを入力し、必要に応じてminttyパスを変更し、指定されている場所の目的のディレクトリの名前を置き換えます。

    C:\cygwin64\bin\mintty.exe /bin/sh -lc 'cd DESIRED-DIRECTORY; exec bash'
    

    たとえば、OPは次のテキストを使用します。

    C:\cygwin64\bin\mintty.exe /bin/sh -lc 'cd /cygdrive/c/Users/Tom/Desktop/; exec bash'
    
  • 「次へ」をクリックします。

  • ショートカットの名前を入力して、「完了」をクリックします。

デスクトップに複数のショートカットを配置して、頻繁にアクセスされるさまざまなディレクトリでCygwin端末を開くことができます。

Netbeansの特定のディレクトリでCygwin Shellを開く方法 at superuser.com に投稿されたソリューションに触発されました。

5
Patrick Kelly

ファイルCygwin.batを見つけて、次のようなコンテンツを作成します。

@echo off
set newpath=%cd:\=/%
pushd "%~dp0"
chdir bin
bash --login -i -c "cd \"%newpath%\"; exec bash"

環境PATHにcygwin.batへのパスを追加します。

これで、任意のフォルダーでアドレスバーに入力できます。

cygwin

また、cmd.exeで入力することもできます

4
Geograph

右クリックしたフォルダでCygwinを開くレジストリ編集スクリプトを作成しました。私のGitHubにあります。

これが私のGitHubです

64ビットマシン用のGithubからのサンプルRegEditコード:

REGEDIT4

[HKEY_CLASSES_ROOT\Directory\Shell\CygwinHere]
@="&Cygwin Bash Here"

[HKEY_CLASSES_ROOT\Directory\Shell\CygwinHere\command]
@="C:\\cygwin64\\bin\\mintty.exe -i /Cygwin-Terminal.ico C:\\cygwin64\\bin\\bash.exe --login -c \"cd \\\"%V\\\" ; exec bash -rcfile ~/.bashrc\""

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\Background\Shell\CygwinHere]
@="&Cygwin Bash Here"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\Background\Shell\CygwinHere\command]
@="C:\\cygwin64\\bin\\mintty.exe -i /Cygwin-Terminal.ico C:\\cygwin64\\bin\\bash.exe --login -c \"cd \\\"%V\\\" ; exec bash -rcfile ~/.bashrc\""
3
umer936

次のコード行を使用して、Win7の現在のディレクトリでzshを起動しました。

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Directory\Background\Shell\cygwin_bash]
@="Open Cygwin Here"
"NoWorkingDirectory"=""

[HKEY_CLASSES_ROOT\Directory\Background\Shell\cygwin_bash\command]
@="\"C:\\Programmieren\\cygwin64\\bin\\mintty.exe\" -i /Cygwin-Terminal.ico /bin/zsh --login -c 'cd \"%V\";zsh'"

私は%Lまたは%1の代わりに%Vを使用したことに注意してください(両方が私のために機能しなかったため)

3
H. Hess

新規インストールが必要な場合は、HOMEという名前のWindows "ユーザー環境変数"を作成し、 "My Documents"が存在する場所のパスを割り当てます。

CygwinインストーラーはHOME変数を検出し、これを自動的にcygpathに変換し、これをmy〜ディレクトリーとして選択します。

これは、私が過去5年間にプロで使用したすべてのワークステーション(約3または4、Win7)で正常に機能しました。私は常にこれらのマシンの唯一のユーザーであり、その効果が何であるかを言うことはできません。

3
Adam.at.Epsilon

Cygwinターミナルを管理者として開きます

Powershellで(チョコレートを使用):

choco install cyg-get

Cygwinでインストールする右クリックメニュー

cyg-get install chere
chere -i

これで、右クリックして、任意のフォルダで「Bash Prompt Here」を使用できます。

2
Jonathan

レジストリを使用する回答で、Windows 2008 R2 SP1では、パスからバックグラウンドを削除する必要があることがわかりました。さらに、chereとxhereはcygwin64の一部ではないため、レジストリとSend Toソリューションを組み合わせて、両方に有効なソリューションを以下に示します。 「E:\ cygwin64」をインストール場所に置き換えます。

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Directory\Shell\cygwin_bash]
@="Open Cygwin Here"

[HKEY_CLASSES_ROOT\Directory\Shell\cygwin_bash\command]
@="E:\\cygwin64\\bin\\mintty.exe -i /Cygwin-Terminal.ico --exec /bin/bash.exe --login -c \"cd '%1' ; exec bash -rcfile ~/.bashrc\""
1
mpersico

Cygwinターミナルを開いて次のように書くだけです:cdそしてドラッグした後、終了したいフォルダーをドロップしてください!

1
Panagiotis

私のWindowsマシンでは、次のことは行われませんでした。

chere -i -t mintty

Minttyシェルは使用できなかったため、ash bash cmd dash mksh pdksh posh tcsh zsh passwdなどのさまざまなシェルを選択できます。

だから私は使用しました:

chere -i -s bash

1
user3065757

バッチファイルを作成し、Cygwinの/ binディレクトリに配置しました。このスクリプトは、Cygwinで選択したフォルダーとドライブを開くためのレジストリエントリをインストール/アンインストールできるように開発されました。詳細については、リンク http://with-love-from-siberia.blogspot.com/2013/12/cygwin-here.html を参照してください。

更新:このソリューションは初期の提案と同じですが、Windowsレジストリでのすべての操作はスクリプト内に隠されています。

コマンドを実行してインストールする

cyghere.bat /install

アンインストールするコマンドを実行します

cyghere.bat /uninstall
0
jsxt

これは、Windows 8.1で機能した唯一のCygwin64レジストリソリューションです。

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Directory\Shell\mintty]
@="Mintty from Here"
"NoWorkingDirectory"=""

[HKEY_CLASSES_ROOT\Directory\Shell\mintty\command]
@="C:\\cygwin64\\bin\\mintty.exe -h always -e /usr/bin/ash -c 'cd  \"$(/usr/bin/cygpath \"%L\")\";  exec /usr/bin/bash  '"

必要に応じて「C:\ cygwin64」パスを変更してください。

0
Smyrnian

Cygwin.icoファイルへのパスにIconフィールドセットを追加することにより、シェルにアイコンを追加できます。

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Directory\Background\Shell\cygwin_bash]
@="Cygwin"
"Icon"="\"C:\\cygwin64\\Cygwin.ico\""

[HKEY_CLASSES_ROOT\Directory\Background\Shell\cygwin_bash\command]
@="C:\\cygwin64\\bin\\mintty.exe -e /bin/xhere /bin/bash.exe"
0
STEELIX

次のコードを持つmove.shというbashファイルを作成しますC:\cygwin64\bin\run.exe -p /bin bash runFile.shこれによりCygwinが起動し、CygwinのbinディレクトリにあるrunFile.shが実行されます特定のディレクトリに移動するとしますE:\codeその後、runFile.shには次のコードがありますcd E: cd code

0
LeelaPrasad4648