2014-11-13 2 views
1

파일을 proj3 이름으로 복사하고 모든 사람이 실행할 수 있도록 권한을 변경하는 tcsh 스크립트의 makefile을 작성하려고합니다. 나는 C++과 C와 같은 makefile을 만드는 법을 알고있다. 그러나 쉘 스크립트를 위해 왜 그것을하는지는 모른다.TCSH Makefile - 파일을 이름으로 복사하고 권한을 변경하십시오.

내 파일 이름은 다음

내가 지금까지 무엇을 가지고 proj3final입니다 :

proj3final: 
    cp final proj3 
    chmod 755 proj3 

내가 make proj3 또는 make 그것이 nothing to be done

답변

0

메이크 규칙 항상가를 만들어야합니다하라는 메시지를 실행할 때마다 타겟과 같은 이름의 파일.

규칙을 실행해야 할 때를 알리려면 make 규칙에 전제 조건이 있어야합니다.

룰은 proj3final 파일을 생성하지만 실제로는 proj3 파일을 생성합니다. 이것은 make를 혼란스럽게 할 것입니다.

또한 규칙은 해당 대상에 전제 조건을 부여하지 않으므로 proj3final 파일이 존재할 때마다 make는 최신 것으로 간주하여 작업을 수행하지 않아도됩니다. 다음 원하는 규칙이 당신의 입력 파일을 가정

final 이름 당신은 proj3final라는 이름의 파일로 복사 것을 원하는 당신이 원하는 일을하고 현재 대상에 대한 Automatic Variables를 사용한다

proj3final: final 
     cp $< [email protected] 
     chmod 755 [email protected] 

( [email protected]) 및 첫 번째 전제 조건 ( $<).

관련 문제