[Azure] WebApps의 웹 작업에서 시작한 배치 파일로 date를 취급하는 경우 mm/dd/yyyy 형식이 되므로 주의
전월 (YYYYMM)을 인수로 프로그램 시작
rem ---現在年月の取得---
set dt=%date:~-10%
set yy=%dt:~0,4%
set mm=%dt:~5,2%
rem ---前月を計算---
set /a mm=%mm%-1
if %mm%==00 (
set mm=12
set /a yy=%yy%-1)
rem ---mmを0埋めして引数とする---
set mm=0%mm%
set mm=%mm:~-2%
set PREVIOUS_MONTH=%yy%%mm%
node myprocess.js %PREVIOUS_MONTH%
이를 Azure WebApps 웹 작업으로 실행하면 date 결과가 mm/dd/yyyy 형식이 되므로 정상적으로 시작되지 않습니다. 위의 실행 결과는 ...
mm/dd/yyyy 형식에서 날짜를 가져오기 위해 배치 파일을 약간 수정합니다. 변경점은 3, 4행째(yy와 mm의 취득 위치)입니다.
전월 (YYYYMM)을 인수로 프로그램 시작 (개)
rem ---現在年月の取得---
set dt=%date:~-10%
set yy=%dt:~6,10%
set mm=%dt:~0,2%
rem ---前月を計算---
set /a mm=%mm%-1
if %mm%==00 (
set mm=12
set /a yy=%yy%-1)
rem ---mmを0埋めして引数とする---
set mm=0%mm%
set mm=%mm:~-2%
set PREVIOUS_MONTH=%yy%%mm%
node myprocess.js %PREVIOUS_MONTH%
움직여 보니 이번에는 무사히 실행할 수 있었습니다.
WebApps는 응용 프로그램 설정에서 (WEBSITE_TIME_ZONE : Tokyo Standard TIme을 설정하여) 시간대를 변경할 수 있지만 날짜와 시간 형식은 현재 변경할 수없는 것 같습니다.
또한 이 기사 에서와 같이 지역 설정에 의존하지 않는 배치에 대한 수정은 wmic 명령이 WebApps 사용자 권한으로 실행할 수 없기 때문에 수정할 수 없습니다.
D:\home>wmic os get LocalDateTime
Access is denied.
가능하면 실행되는 프로그램에서 날짜 계산하도록 변경하는 것이 좋다고 생각합니다만, 기존의 배치를 Web 작업에 그대로 이전하고 싶은 경우는, date 의 처리에 주의할 필요가 있습니다.
Reference
이 문제에 관하여([Azure] WebApps의 웹 작업에서 시작한 배치 파일로 date를 취급하는 경우 mm/dd/yyyy 형식이 되므로 주의), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/VA_nakatsu/items/b4ab0e9bfef1f0c7db33텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)