2017-01-04 1 views
2

git repo를 복제하고 cd를 노드 CLI 응용 프로그램으로 개발하고 싶습니다.bash 터미널의 현재 작업 디렉토리를 Nodejs로 변경하십시오.

예 :

dummyuser:~$ dummy-cli-command dummy-git-repo-url 
Cloning repository... 
dummyuser:~/Workspace/dummy-git-repo$ 

나는 그것을 복제 할 수 있었다 그러나 그것으로 cd 수 없습니다입니다. 나는 그 노드가 내 코드를 실행하는 하위 프로세스를 포크하고, 처음 node-cli-command를 실행 한 bash 터미널의 디렉토리를 변경할 방법이 없다는 것을 알고있다. 누구나 어떤 해결 방법으로도 도와 줄 수 있습니까?

답변

0

노드를 사용하는 것이 아니라 다른 프로그램을 사용하지 않을 수 없습니다. 셸 스크립트로도 할 수는 없지만 쉘 별칭이나 함수로 수행 할 수는 있지만 하위 프로세스로 실행되지 않는 경우에만 수행 할 수 있습니다.

노드 프로그램이 올바른 디렉토리를 실행하는 쉘 별칭 또는 쉘 기능으로 반환하고 디렉토리를 변경하는 별칭 또는 기능 인 경우이를 달성 할 수 있다는 것을 의미합니다. 별칭이나 함수는 명령 줄 인수로 가져 오는 경우 대상을 먼저 알 수 있습니다. 그러나 다시 한번 쉘 함수를 사용한다면, 먼저 노드가 repo를 복제 할 필요가 없습니다.

결론은 쉘의 작업 디렉토리를 하위 프로세스에서 변경할 수 없기 때문에 유일한 옵션은 쉘의 별칭 또는 기능과 같은 프로세스에서 코드를 실행하여 수행하는 옵션입니다. 껍질.

+0

동일한 기능을하는 이미 개발 된 루비 기반 CLI를 복제하고 있습니다. 또한 복제본과'cd'는 복제 된 repo 폴더에 있습니다. 또한 커뮤니티에서 발생할 수있는 모든 가능한 해결 방법을 검색했지만 해결책을 찾지 못했습니다. '별칭'기반의 해결 방법은 가능하지만 누군가이 문제를 해결하기 위해 어떤 트릭을 발견했는지 알고 싶었습니다. –

관련 문제