Cygwin Bash를 실행하도록 ConEmu를 구성하려면 어떻게해야합니까?


42

새로운 작업을 만들었습니다

{세게 때리다}

내 홈 디렉토리를 전달

/ dir "C : \ Users \ TMB \"

응용 프로그램으로 bash를 추가했습니다.

C : \ cygwin \ bin \ bash.exe

Bash를 열면 기본 UNIX / Cygwin 유틸리티를 사용할 수 없습니다. Cygwin Bash를 실행하도록 ConEmu를 구성하려면 어떻게해야합니까?


어떤 ConEmu 버전을 사용하고 있습니까? 또한 모든 bash 버전이 작업 디렉토리를 지원하지는 않습니다. 힘내 bash-내가 기억하는 것처럼 할 수 있습니다.
막시무스

내 bash 프로필에서 작업 디렉토리를 설정하는 방법을 알 수 없었지만 표시된 답변 아래에서보다 일반적인 해결책을 찾았습니다.
TMB

ConEmu x64 120727c.x64
TMB

"작업 디렉토리"는 / dir 스위치로 지정한 것을 의미합니다. BTW,이 답을 읽었습니까? superuser.com/a/482340/139371
Maximus

답변:


48

이것은 다른 사람들을 도울 수 있습니다.

ConEmu 버전 140310은 CygWin Bash를 자동으로 감지하는 것처럼 보입니다.

ConEmu를 설치 한 후 Cygwin을 설치 한 경우 작업 목록 을 다시로드 해야합니다 .

  1. 설정으로 이동 ... (Win + Alt + P)
  2. 작업 목록으로 이동합니다 (시작> 작업).
  3. Reload ... 버튼을 클릭하십시오 .

이제 미리 정의 된 작업 목록에서 {CygWin bash} 를 옵션 중 하나로 볼 수 있습니다.

ConEmu의 CygWin bash 스크린 샷

PS-이 방법으로 문제가 해결되지 않으면 ConEmu 설정을 재설정하십시오 ( 설정 창 하단에서 재설정 ... 버튼을 클릭하십시오 ).


2
그리고 만약 다시로드재설정이 작동하지 않습니다, 나는 당신의 스크린 샷과 같이 우리는 경로, 명령 및 옵션을 입력 할 수 있습니다 같아요.
TMB

%SystemDrive%\cygwin64\bin\sh.exe --login -i미리보기 채널의 140304 에서 나를 위해 .
TMB

3
나를 위해 Add default tasks...버튼 (버튼 바로 위 Reload)을 클릭하면 트릭이되었습니다 ...
Hanan N.

9
sh.exe는 .bashrc를 제공하지 않습니다. bash.exe만이 가능합니다. 그래서 나는 명령을 사용하고 있습니다%SystemDrive%\cygwin64\bin\bash.exe --login -i
John Prior

@JohnPrior의 의견은 실제로 매우 유용합니다. sh.exe를 사용할 때 PATH 변수가 모두 잘못되었지만 bash.exe를 사용하면 실제로 내 응용 프로그램을 찾을 수 있습니다.
flungo

7

또는 대신

C:\cygwin\bin\bash.exe

사용하다

C:\cygwin\Cygwin.bat

나는 그것이 가장 간단한 방법이라고 생각합니다.
laurent

6

Bash가 합리적인 가치를 받고 있는지 확인하십시오 $PATH. 일반적으로 호출하는 모든 항목에서 상속하지만 ConEmu는 Windows 응용 프로그램이므로 제공하려는 모든 것은 설정 한 것입니다 %Path%. 일반적으로 Cygwin 경로 디렉토리가 포함되어 있지 않으므로 Bash는 ls& c 를 찾을 위치를 모릅니다 .

이 문제를 해결하는 방법은 ConEmu가 제공하는 모든 수단을 통해 --login -iBash에 명령 줄 인수로 전달하는 것입니다. 이 읽을 수 있도록이, 당신은 대화 형 로그인 쉘로 실행하고 그것을 말할 것이다 /etc/profile, ~/.profile그리고 ~/.bashrc시작에. 내 경험상, 그것은 그것을 합리적으로하기에 충분했습니다 $PATH. 그래도 문제가 해결되지 않으면와 같은 줄로 명시 적으로 지정할 수 PATH=/bin:/usr/bin:/usr/local/bin:[...]:$PATH있습니다 ~/.bashrc.


이것은 나에게 내가 내 정상적인 윈도우 홈 디렉토리를 가리 키도록 싶어 옆에 찾고 있던 유틸리티 없어 /cygdrive/c/cygwin/home내가 삭제 너무 home과 함께 접합을 만들어 mklink -J home C:\Userscmd.exe를에
TMB

3
그것은 당신을 위해 일을 다행입니다. 나는 c : \ users \ me에서 ~를 가리 키기 위해 접합을 사용하는 것에 대해 생각하지 않았지만 한 번 symlink로 연결을 수행했으며 그 경험을 바탕으로 다음과 같은 경고를 표시합니다 .ComboFix를 실행하여 맬웨어를 정리 해야하는 경우 컴퓨터에 침입하면 c : \ users \ you에있는 파일이 모두 사라집니다 . 나는 홈 디렉토리의 모든 것을 한 번 그런 식으로 잃어 버렸고 최신 백업은 1 주일이었습니다. 내가했던 것과 같은 실수를하지 마십시오!
Aaron Miller

2

이게 내 방법이야

다음 명령을 사용하여 ConEmu에서 새 작업을 만듭니다.

set HOME=C:\Home & "C:\Home\Applications\cygwin64\bin\mintty.exe" -i /Cygwin-Terminal.ico -

귀하의 솔루션이 작동하고 mintty.exe 인터페이스를 좋아하지만 왜 작동하는지 설명 할 수 있습니까? 특히 "&"는 무엇입니까?
Dr. Koutheir Attouchi

0

나는 그것이 아주 오래된 질문이라는 것을 알고 있지만 어쨌든 이것을 공유하고 싶었습니다.

특정 작업 디렉토리 내에서 bash를 시작하려면 여기에 설명 된대로 명령을 설정 SET CHERE_INVOKING=1 & "C:\cygwin\bin\bash.exe --login -i" -cur_console:t:"cygwin terminal"하고 작업 디렉토리를 정상적으로 지정 하십시오 ./dir "..."


0

Cygwin 명령 bash을 실행 방법, cmd쉘 또는 기타 쉘에서 사용 가능하게하려면 Path환경 변수에 Cygwin bin디렉토리가 추가 되어 있는지 확인하십시오 .
로 이동 Control Panel > System and Security > System(표준 단축키 Win+Pause후) Advanced system settings > Environment variables. 모든 사용자에 대해 사용자에 Path대해서만 시스템 변수를 편집하십시오 Path. 사용자 변수를 편집 (존재하지 않는 경우 작성)하십시오 . 에 64 비트 Cygwin의 경우 cygwin64 일 수 있음) 이 설치되어
있다고 가정 합니다 . 시스템 변수 를 사용하는 경우 Cygwin을 처음에 추가하면 일부 Cygwin 명령이 내장 명령을 음영 처리합니다 (예 : Windows 대신 Cygwin 명령이 사용됨)cygwinC:\cygwinC:\cygwin\binPathPathbinfindfind). 나는 그렇게하는 것을 선호하지만, 그렇지 않으면 Cygwin을 bin끝에 추가 하십시오 Path.

대부분의 다른 답변도 ConEmu 설정에 대해 이야기하기 때문에 개인적으로 의견을 제시하겠습니다.

비 로그인 셸을 실행하는 것을 선호합니다. 예를 들어, Linux에서는 텍스트 콘솔이나 ssh를 통해 로그인 할 때 로그인 쉘을, 터미널 에뮬레이터 (xterm, konsole 등)를 열면 비 로그인 대화식 쉘을 얻게됩니다.

내 {Bash} 작업에는 /dir "%CD%"작업 디렉토리를 현재 탭의 작업 디렉토리로 설정하기위한 작업 매개 변수가 있습니다 (예 : Far의 bash 작업). bash를 시작하는 명령 :
%ConEmuDrive%\cygwin\bin\bash.exe -new_console:C:"%ConEmuDrive%\cygwin\Cygwin.ico"

주의 사항 --login -i옵션은 생략되고 셸은 비 로그인 대화식 셸로 시작합니다 (옵션 옵션이없고 -c 옵션이 없으므로 stdin 및 stdout이 터미널에 연결되어 있으므로 bash 맨 페이지의 INVOCATION 섹션 참조). 설명). 사용자 rcfile에서 명령을 읽고 실행합니다 ~/.bashrc( 로그인 쉘이 아니 /etc/profile거나 ~/.bash_profile로그인 쉘 set CHERE_INVOKING=1과 관련이 있으므로 /etc/profile. 따라서 사용자 별명, 쉘 옵션, 추가 환경 변수 등을 ~ / .bashrc에 넣으십시오.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.