2014-02-16 5 views
5

을 CSH 서버에서 bash 쉘을 설정하려면 - 나는카피 스트라 노 3. 대신

DEBUG [0bb99d53] Command: if test ! -d /home/web_server/data/www/capistrano/site/shared/dumps; then echo "Directory does not exist '/home/web_server/data/www/capistrano/site/shared/dumps'" 1>&2; false; fi 
DEBUG [0bb99d53] if: Expression Syntax. 
DEBUG [0bb99d53] fi: Command not found. 

작동하지 않는 오류와 내 CAP3 작업을하고 난 이유를 알고 - 있기 때문에 내 서버 나

set :shell, '/usr/local/bin/bash' 
set :default_shell, '/usr/local/bin/bash' 

H 작동하지 않습니다 CAP3 변수에 따라 기본

% echo $0 
-csh 

에 의해 CSH 쉘을 사용 내가 cap3 작업을위한 쉘을 설정할 수 있습니까?

답변

0

내 의견은 당신이 사용하려고 할 수 있다는 것입니다 : 배쉬 사람 페이지에서

/bin/bash -c 'if test ! -d /home/web_server/data/www/capistrano/site/shared/dumps; then echo "Directory does not exist \'/home/web_server/data/www/capistrano/site/shared/dumps\'" 1>&2; false; fi' 

:

-c 옵션이있는 경우, 다음 명령은 문자열에서 읽습니다. 문자열 뒤에 인수가 있으면 $ 0으로 시작하는 위치 매개 변수에 할당됩니다.

나는 테스트를했고 그것은 나를 위해 일한 :

[email protected]:~>%bash -c "/bin/echo Hello; echo Goodbye" 
Hello 
Goodbye 
1

당신은 당신의 서버에 배포 사용자에 대해 비난하는 기본 쉘을 설정할 수 있습니다.

chsh -s /usr/local/bin/bash [your_deploy_user] 

이것은 나를 위해 일했습니다.