2014-10-11 4 views
-2

나를 안내 할 수 있습니까? kshell 스크립트를 Python으로 마이그레이션하려고합니다. 누군가이 작업을 진행하는 방법을 안내 할 수 있다면. 그 기능이 정말로 필요한가요? 더 간결하게 읽을 수 있도록 노력하고 있습니다. 고맙습니다. 난 당신이 파이썬에서 파일에 대한 높은 수준의 작업을위한 shutil를 참조하는 것이 좋습니다kshell 스크립트를 파이썬으로 변환

#!/bin/ksh 
DB="BATCH_JOB_STAT" 
LINE=$DB 
export $DB 
NoFile() 
{ 
    # no file 
    COLOR="clear" 
    LINE=$DB" NO BATCH_JOB ERROR FLAG FOUND" 
    echo $LINE 
    $BB $BBDISP "status ${MACHINE}.BATCH_JOB_STAT $COLOR `date` $LINE" 
    exit 1 
} 
MultiFile() 
{ 
    fail_flag=0 
    # Check more than One file 
    files=$(ls /opt/rh/flag/*) 
    for file in $files 
    do 
    if [ -f $file ] ; then 
     ## echo "# Error. Flag File found: $file" 
     fail_flag=1 
    fi 
    done 
    ## echo "-- Fail flag is : $fail_flag" 
    if [ $fail_flag -eq 0 ]; then 
     # no FAIL status means GOOD 
     COLOR="green" 
     LINE=$DB" OK" 
     echo $LINE 
    else 
     COLOR="red" 
     LINE=$DB" BATCH_JOB ERROR FLAG FILE FOUND. <P> -- $file -- </P> <P> Support <A HREF=http://johndoe/support.htm> Tech </A>" 
     echo $LINE 
    fi 
    $BB $BBDISP "status ${MACHINE}.BATCH_JOB_STAT $COLOR `date` $LINE" 
} 
# MAIN 
file_count=$(ls -l /opt/rh/flag 2>/dev/null |grep -v total |wc -l) 
case "$file_count" in 
    0) NoFile ;; 
    *) MultiFile ;; 
esac 
exit 0 
+1

이것은 자유 질문입니다. "최선의 대답"이 없기 때문에 "진행 방법에 대한 정보를 알려주십시오"라는 질문은 Stackoverflow의 Q & A 형식에 적합하지 않으며 모든 대답이 다른 사람을 도울 가능성은 거의 없습니다. 혼자 해결할 수없는 문제가 생겼을 때 새로운 것을 물어보십시오. 이러한 문제가 발생하면 질문에 문제를 재현하는 데 필요한 최소한의 코드를 넣으십시오. – Sumurai8

+0

본인이나 다른 사람을 기쁘게해서 죄송합니다. 내 의도가 아니야. 나는 실수로만 배울 수 있습니다. 이것은 3 일간의 두 번째 게시물입니다. 비고 주셔서 감사합니다 – pirulo

+1

나를 괴롭히기 위해 더 열심히 노력해야합니다. ;-) 나는 누군가가 그것을 읽고, 다음 번에 더 나은 질문을 게시하기를 희망한다고 코멘트를 남겨둔다. (또는 어떤 경우에는 내가 정말로 여기있는 옵션이라고 생각하지 않는 질문을 편집한다.) 질문을 개선하는 방법에 대한 정보는 [도움말 센터] (http://stackoverflow.com/help)에서 확인할 수 있습니다. [이 체크리스트] (http://meta.stackoverflow.com/questions/260648/stack-overflow-question-checklist)도 도움이 될 수 있습니다. – Sumurai8

답변

0

: 여기에 코드입니다. 그리고 물론, sysos (처음 사용되는).

+0

줄 루어, 어떻게 bei가 shutil을 사용했을까요? 그 폴더에 파일이있는 경우 플래그를 발생 시키려고합니다. "shutil.Error"를 사용해야할까요? 나는 파이썬에서이 게임을 처음 접했어. 고맙습니다 – pirulo