2012-11-29 5 views
1

사실 저는 인터넷에서 현재 사용자의 집 dir에 소프트웨어를 다운로드 할 스크립트를 작성했으며이 도구는 untar가 될 것입니다. 그것을 설치하고 일부 소프트웨어에서 나는 python setup.py install을 실행해야만한다. 그러나 이제는 문제는 내가 현재의 dir이 모든 명령을 실행하는 것을 원하지 않는다는 것이다.make와 같은 명령을 실행하고 싶습니다. 설치하고 파이썬 설치를 설치하십시오.

처럼

(파이썬 설치 설치, 설치하기, 만들기) 명령에 경로를 지정할 수있는 방법이 있습니다 : 파이썬 설치 /home/username/Desktop/urllib/setup.py이

메이크업/홈/사용자 이름/데스크탑/somedir/

make man 페이지에 따르면/홈/사용자 이름/데스크탑/somedir/

답변

0

설치합니다

-C dir, --directory=dir 
    Change to directory dir before reading the makefiles or doing anything 
    else. If multiple -C options are specified, each is interpreted 
    relative to the previous one: -C/-C etc is equivalent to -C /etc. 
    This is typically used with recursive invocations of make. 

그래서, 당신은 입력 할 수 에게서는 :

파이썬 명령 줄에서 해당 아무것도 없다
make -C /home/username/Desktop/somedir/ 
make -C /home/username/Desktop/somedir/ install 

. 그러나 쉘 스크립트에서 이것을 사용하는 것이 좋습니다.

(cd /home/username/Desktop/urllib/ && python setup.py install) 

괄호 안의 명령은 "서브 쉘"에서 실행됩니다. 따라서 스크립트의 작업 디렉토리는 변경되지 않지만 python 명령은 /home/username/Desktop/urllib/ 디렉토리에서 실행됩니다. &&을 사용하면 cd 명령이 성공하지 않으면 Python 명령이 실행되지 않습니다. make 명령과 동일한 트릭을 사용할 수도 있습니다.

(cd /home/username/Desktop/somedir/ && make && make install) 
관련 문제