2016-10-19 3 views
1

내가 원하는 것은 기본 쉘을 연 다음 다른 쉘을 호출하고 거기에서 명령을 실행하는 것입니다. 쉘을 열고 명령을 실행하는 방법

이 같은 노력했다 :

c:/Windows/System32/bash.exe -c "zsh & zstyle"

또는

cmd /k "c:/Windows/System32/bash.exe -c zsh" & zstyle -이 공개 쉘을하지만, 명령을 실행하지 않습니다

또는

c:/Windows/System32/bash.exe -c "zsh -c 'zstyle'"

현재 Windows 용 cmder/conemu 터미널을 사용하고 있습니다.

+0

답변으로 문제가 해결되면 옆에있는 큰 체크 표시 (✓)를 클릭하고 선택 사항으로 최대 투표 (최대 15 개 이상의 평판 포인트가 필요함)로 동의하십시오. 다른 답변이 도움이 되었으면 최대 투표를하십시오. 수락 및 승격은 미래의 독자에게 도움이됩니다. 관련 도움말 센터 문서 (http://stackoverflow.com/help/someone-answers)를 참조하십시오. 질문에 대한 답변이 아직 충분하지 않은 경우 의견을 보내주십시오. – mklement0

+0

@ mklement0 네, 그냥 somethg를 추가하고 싶을 때 기다려주십시오. 며칠 동안 확인하고 받아들이십시오. 걱정하지 마십시오.) 대답을위한 Thx. – AuthorProxy

답변

1

불행하게도, 시작을 전달하는 것은 -c이 작동하지 않습니다 (-i과) 대화 형 사용 열어 유지와 zsh에 명령합니다.

면책 조항 : 다음 솔루션은 cmder/conemu가 아닌 일반 명령 프롬프트 (cmd.exe)에서 테스트를 거쳤지 만 그곳에서 일하기를 기대합니다.
PowerShell (v3 +)에서 시도하려면 --%을 첫 번째 인수 (bash.exe 바로 뒤에)로 삽입하십시오. 여기

는 해결 방법입니다 :

c:/Windows/System32/bash.exe -c "zsh -c 'zstyle' && exec zsh -i" 

zstyle다른, 과도zsh 인스턴스에서 실행되는 명령, 그래서이 방법은 에게 환경을 수정할 수 있습니다 명령을 그 목적으로 작동하지 않습니다 열려있는 대화 형 셸의 실행중인 두 명령이 표시되어있는 경우 는, 자신의 출력 이전을 인쇄 할 것이다, 그러나,

c:/Windows/System32/bash.exe -c "{ { echo 'zstyle'; echo 'exec 0<&3-';} | zsh -i; } 3<&0" 

참고 : 그 요구 사항 인 경우
는 일이 (this answer의이 솔루션 의례) 더 복잡 명령 앞에 대화 형으로 입력 된 것처럼 프롬프트 앞에 표시됩니다.