루프가 무한 루프에 멈춤

이 기능이 멈춘 이유를 알 수 없습니다.
내가하려는 것은 미리 결정된 시작 날짜부터 현재 달까지 폴더를 만드는 것입니다. 불행히도 모든 폴더 생성을 완료 한 다음 아래에 게시 된 산술에 갇혀 있습니다.
누구든지 올바른 길로 갈 수 있도록 힌트를 줄 수 있습니까?
내 코드는 다음과 같습니다.

yearloop(){
   year=$(echo "$firstmsgdate"|cut -d"/" -f3)
   zmmailbox -z -m $account gf /archive || zmmailbox -z -m $account cf /archive
   crntmnth=$(date +"%m")
   incmonth=0
   while [ $year -le $currentyear ]; do
     if [ "$year" -lt "$currentyear" ]; then
       #do stuff
       let year++
     elif [ $year -eq $currentyear ]; then
       while [ $incmonth -lt $crntmnth ]; do
         #do otherthings
         let incmonth++
       done
     else
       echo "Else"
     fi
   done
}

이것은 내가받는 출력이다
+ '['15 -le 15 ']'
+ '['15 -lt 15 ']'
+ '['15 -eq 15 ']'
+ '['2 -lt 02 ']'
+ '['15 -le 15 ']'
+ '['15 -lt 15 ']'
+ '['15 -eq 15 ']'
+ '['2 -lt 02 ']'
+ '['15- 르 15 ']'

오리온

연도가 현재 연도에 도달하면 다시 증가하지 않으므로 ( elif적용 중) while"작거나 같음"을 테스트 하는 외부 루프가 여전히 유효합니다. 부품 let year++while루프 뒤에 넣으면 elif작동합니다. 또는 더 나은 방법 ... break그 시점에서 명시 적으로 전화하십시오 . while자체적으로 종료하기 위해 루프에 의존하는 것은 결코 좋지 않습니다 .

또한 시퀀스를 사용하고 모든 서투른 테스트를 건너 뛸 수 있습니다.

#initialization as before
let lastyear=currentyear-1
for year in $(seq $year $lastyear); do
   #do stuff with $year
done
#now months of the current year
for month in $(seq $incmonth $crntmnth); do
   #do stuff with $month and $currentyear
done

어쨌든 이중 루프는 쓸모가 없었습니다. 올해는 한 번만 발생합니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

응용 파서가 무한 루프에 멈춤

분류에서Dev

Python 스크립트가 무한 루프에 멈춤

분류에서Dev

javax.ws.rs.core.Response.readEntity ()가 무한 루프에 멈춤

분류에서Dev

Windows 업데이트가 이상한 루프에 멈춤

분류에서Dev

iMacros가 무작위로 루프에서 멈춤

분류에서Dev

꼬리 필드가없는 LinkedList가 무한 루프에서 멈춤

분류에서Dev

while 루프를 끊으려고 할 때 무한 루프에서 멈춤

분류에서Dev

Do-While 문이 무한 루프에 멈춤

분류에서Dev

카운트가있는 for 및 while 루프의 C ++ 센티넬. 무한 루프에서 멈춤

분류에서Dev

while 루프에서 멈춤

분류에서Dev

mouseover 이미지가 루프에 멈춤

분류에서Dev

JavaFx가 while 루프에서 멈춤

분류에서Dev

첫 페이지에 루프가 멈춤

분류에서Dev

PHP가 루프 운동에 멈춤

분류에서Dev

두 문자열을 비교 한 후 무한 루프에서 멈춤

분류에서Dev

스프링 보안 사용자 정의 세션 시간 초과가 무한 루프에 멈춤

분류에서Dev

무한 루프 및 공백 감지 C ++로 멈춤

분류에서Dev

C에서 배열을 순회하는 동안 무한 루프에서 멈춤

분류에서Dev

IPCONFIG를 실행할 배치 파일이 무한 루프에 멈춤

분류에서Dev

모노의 비동기 WCF 호출이 무한 루프에서 멈춤

분류에서Dev

연결된 목록의 무한 Do-while 루프에서 멈춤

분류에서Dev

프로그램이 루프에 멈춤

분류에서Dev

while 루프로 멈춤

분류에서Dev

WPF의 Datagrid의 확인란 이벤트로 인해 제어가 무한 루프 내부에 멈춤

분류에서Dev

scanf / cin이 루프에 멈춤

분류에서Dev

while 루프 중에 양식이 멈춤

분류에서Dev

Java JToggleButton이 While 루프에서 멈춤

분류에서Dev

Java JToggleButton이 While 루프에서 멈춤

분류에서Dev

분기 후 while 루프에서 멈춤

Related 관련 기사

  1. 1

    응용 파서가 무한 루프에 멈춤

  2. 2

    Python 스크립트가 무한 루프에 멈춤

  3. 3

    javax.ws.rs.core.Response.readEntity ()가 무한 루프에 멈춤

  4. 4

    Windows 업데이트가 이상한 루프에 멈춤

  5. 5

    iMacros가 무작위로 루프에서 멈춤

  6. 6

    꼬리 필드가없는 LinkedList가 무한 루프에서 멈춤

  7. 7

    while 루프를 끊으려고 할 때 무한 루프에서 멈춤

  8. 8

    Do-While 문이 무한 루프에 멈춤

  9. 9

    카운트가있는 for 및 while 루프의 C ++ 센티넬. 무한 루프에서 멈춤

  10. 10

    while 루프에서 멈춤

  11. 11

    mouseover 이미지가 루프에 멈춤

  12. 12

    JavaFx가 while 루프에서 멈춤

  13. 13

    첫 페이지에 루프가 멈춤

  14. 14

    PHP가 루프 운동에 멈춤

  15. 15

    두 문자열을 비교 한 후 무한 루프에서 멈춤

  16. 16

    스프링 보안 사용자 정의 세션 시간 초과가 무한 루프에 멈춤

  17. 17

    무한 루프 및 공백 감지 C ++로 멈춤

  18. 18

    C에서 배열을 순회하는 동안 무한 루프에서 멈춤

  19. 19

    IPCONFIG를 실행할 배치 파일이 무한 루프에 멈춤

  20. 20

    모노의 비동기 WCF 호출이 무한 루프에서 멈춤

  21. 21

    연결된 목록의 무한 Do-while 루프에서 멈춤

  22. 22

    프로그램이 루프에 멈춤

  23. 23

    while 루프로 멈춤

  24. 24

    WPF의 Datagrid의 확인란 이벤트로 인해 제어가 무한 루프 내부에 멈춤

  25. 25

    scanf / cin이 루프에 멈춤

  26. 26

    while 루프 중에 양식이 멈춤

  27. 27

    Java JToggleButton이 While 루프에서 멈춤

  28. 28

    Java JToggleButton이 While 루프에서 멈춤

  29. 29

    분기 후 while 루프에서 멈춤

뜨겁다태그

보관