2014-02-24 6 views
0

한 줄 스크립트에서 종속성을 복제하고 설치하려고합니다. git clone https://github.com/Study-Master/Java-WebSocket.git /tmp/socket && cd /tmp/socket && mvn install -Dmaven.test.skip=true, 이것이 내가 입력 한 것입니다. 그러나이 명령은 현재 디렉토리를 남겨두고 실행 후 /tmp/socket으로갑니다. 현재 디렉토리에 머무를 수있는 방법이 있습니까?bash 스크립트

답변

8

현재 디렉토리에 머무를 수있는 방법이 있습니까?

예. 즉, (괄호 내에서 명령을 묶으) (command)을 말함으로써, 서브 쉘에서 명령을 실행

(git clone https://github.com/Study-Master/Java-WebSocket.git /tmp/socket && cd /tmp/socket && mvn install -Dmaven.test.skip=true) 
2

필요한 디렉토리 만 저장하면됩니다.

PWD=$(pwd) 

는 ... pwd을 실행하고 $PWD 출력을 저장한다.

그래서 명령은 다음과 같이 수 :

PWD=$(pwd); git clone https://github.com/Study-Master/Java-WebSocket.git /tmp/socket && cd /tmp/socket && mvn install -Dmaven.test.skip=true; cd $PWD 

그리고 돌아 왔구나.

+1

더 나은 아직이,'pushd'와'popd'를 사용합니다. – dreamlax

+0

더 나아가'cd -' – BroSlow

+0

오른쪽 @BroSlow -'cd-'에 대해 잊었을 때'$ OLDPWD'로 돌아갑니다. – zero0