2014-06-08 3 views
0

tcsh를 사용하여 패턴 일치를 수행하기 위해 모든 종류의 조합을 시도하고 있습니다 (tcsh를 피할 수 없음). 나는 명령을 실행 한 다음 구문 분석 (공백 사용)합니다. 잘 작동한다. 그러나, 그것에서 숫자를 얻고 싶을 때 그것은 패턴 매치를하지 않습니다.
"loop"출력을주기 위해서 if 루프 안에 절대 들어가 지 않습니다.tcsh의 조건을 사용하여 패턴 일치

echo "Command: $command\n" 
set tg_activity = `$command` 
foreach abc (`echo $tg_activity`) 
echo "The part is: $abc" 
if ("$abc" =~ ^[0-9]*) then 
    echo "loop" 
    set job_id = "$abc" 
    break 
endif 
echo "No If\n" 
end 

if 조건 내에서 "$ abc"대신 $ abc를 사용하면 "if : Missing file name."오류가 발생합니다. "$ abc"는 any (*)와 일치하는 패턴을 작성하고 "loop"출력을 제공하므로 여기에서 잘 작동합니다. 조건 문에 문제가 있습니다 (좁혀졌습니다). 어떻게 패턴을 일치시킬 수 있습니다.

답변

0

foreach는 ELEM 알려 주시기 바랍니다 ($ tg_activity : Q) 을 경우 ($의 ELEM : Q = ~ [0-9] * [0-9]?) 다음 설정 작업 ID = echo $elem:q 휴식 ENDIF 끝

위 업무용