특정 값을 선택
LIST = pre1 pre2 pre3 pre4 pre5 pre6 pre7 pre8 pre9 pre10
START = 0
for prefix in $(LIST); do \
if $(input) == $(prefix) then
START = 1
endif \
if $(START) == 1 then \
if [ -f $(prefix)<file_name> ]; then <do_A>; else <do_B>; fi
endif \
done
언급 않다면 내 문제는 두 사람과 함께하다 위. 나는 그것을 반복하는 동안 목록에서 특정 문자열 값을 선택할 수 있습니다 ($ (입력) == $ (접두사) 다음) 및 값을 1 또는 0인지 확인하는 방법을 모르겠어요. $ (START) == 1이면).
이 코드의 목적은 파일 이름은 같지만 접두사가 다른 여러 디렉토리에 동일한 makefile을 사용하는 것입니다. 때로는 디렉토리가 서로 다른 접두어를 가진 파일의 여러 버전을 포함 할 수 있으며 이러한 접두어의 계층 구조를 정의하고자합니다 (본 예에서는 LIST로 정의 됨). 사용자가 버전을 제공 할 때 아이디어는 그가 제공하는 버전부터 시작하여 최신 버전 검색을 시작하는 것입니다 (예 : 사용자가 pre4를 제공하면 먼저 pre4를 검색해야하며 존재하지 않으면 - i 계속해서 pre5를 검색 할 것이지만,이 예에서는 현재 디렉토리에 존재하더라도 pre1을 검색하지 않을 것입니다.
누구나 어떻게 할 수 있습니까?
미리 감사드립니다. 그는 메이크의 명령 있어야하는 경우
이것은 약간 분명하지 않습니다. pre4 *가 존재하면 프로세스가 pre5, pre6 ...으로 계속 진행해야합니까? – Beta
글쎄, 그 생각은 계속되지 않을거야. 하지만 이건 내 문제가 아니야. 나는 그걸로 처리하는 방법을 알고 있다고 생각합니다 (에서 START를 다시 0으로 설정) –
user897621
그래서 ...해야 할 일은 B라고해야합니까? – Beta