필자는 약간의 배치 파일을 작성하여 일부 날짜 계산을 수행합니다.배치 파일에서 월 var를 한 단계 씩 증가시키는 방법은 무엇입니까?
그러나, 나는 사소한 문제가 우연히 발견 한 :
내 달 VAR를 증가하려고 할 때마다, 그것은 단순히 원하는 점진에 VAR를 설정합니다. 코드 :
: How much time should we add? Default is 1 month
SET timeadd=1
: Set the date variables to build needed format
SET YYYY=%date:~-4%
SET MM=%date:~3,2%
SET DD=%date:~0,2%
if not %MM%==12 (
SET /A MM=MM+timeadd
SET changed=1
)
선언 후, 오늘 var (8 월 17 일)은 "08"이됩니다.
그러나 if 블록 이후에이 var은 "1"로 변경됩니다.
이 문제를 해결할 수있는 단서가 없지만 변환 문제 (날짜를 문자열로 beeing하고 정수를 덧붙인 시간)라고 생각할 수 있습니다.
하지 않는지 확인해야합니다. 08은 유효한 8 진수가 아니기 때문에 1을 남겨 둡니다. – wmz
그래, 그건 정확히 내가 생각한 것입니다. (그리고 그 동안에 queston에게 물어 본 이후로). 이제 문제가 남아 있습니다. 어떻게 해결할 수 있습니까? 어떤 생각입니까? –
wmz에서 힌트를 얻은 후에 해결책을 찾았습니다 (다시 한 번 고맙습니다). if 문이 문제를 해결하기 전에 다음 코드를 삽입하십시오. % MM % LSS 10 MM 설정! = MM : ~ -1! –