.bat 스크립트에서 특정 요일을 어떻게 테스트합니까? [복제]


0

이 질문에는 이미 답변이 있습니다.

(인텔 i7의 Win 8.1 Pro 64b)

이 완전 자동화 된 백업 스크립트가 매일 실행되고 있습니다. 그러나 저장된 디렉토리 중 하나 (공간의 약 25 %를 소비하므로 결과적으로 전체 백업 시간의 거의 동일한 부분)는 거의 수정되지 않습니다.

이제 매주 한 번만 문제의 디렉토리를 저장하도록 선택했습니다. 오직 .bat 파일에서 요일을 얻는 방법을 알 수 없습니다.

(물론 HP41C에서 이전에 수행 한 작업을 수행 할 수 있었지만 일, 월, 년을 포함한 계산을 수행 할 수 있었지만 계획 B라고 생각합니다.)

어떻게 든 더 효율적인 방식으로 요일을 .bat 변수에로드하는 방법이 있습니까?


동의했다. 모범 사례는 무엇입니까? 이 질문을 삭제 하시겠습니까?
Herb

답변:


1

그래 넌 할수있어.

다음 명령을 사용하여 요일을 얻을 수 있습니다.

set day=%date:~0,2%

이제 %day%날짜가 포함되어 있습니다.

로케일에 따라 날짜가 2 대신 3 일을 리턴 할 수 있습니다.이 경우에는 set day=%date:~0,3%

설명 : % date %는 요일로 시작하는 작은 문자열과 OS에서 사용하는 언어의 날짜로 구성됩니다. 이 명령은 day라는 새 변수를 작성하고 변수 % date %의 처음 두 문자를 결과로 사용합니다.


echo % date %는 날짜 만 출력하지만 요일 (일요일, 월요일 ...)에 대한 정보는 없습니다.
Herb

흠, 그것은 나를 위해한다. 로케일의 일부인 것 같습니다. 버머. 로케일을 변경하여 날짜를 % date % 변수에 포함시키는 방법을 알아봐야합니다.
LPChip

당신이 실행하면 date /t그것은 다음을 보여 줍니까?
LPChip

아니, 날짜 만 (로케일은 "dd.mm.yyyy"로 표시됩니다.) 그러나 MS가 동일한 OS에있을 때 MS가 로케일에 따라 cmd 문의 기능을 수행한다고 믿기 어렵습니다. -말하기 : Win 8.1도 사용하고 있습니까?
Herb

Windows 10을 사용하고 있지만 경험이 Windows 7, XP, 2000 및 이전 버전에서도 작동한다는 것을 알고 있습니다. ma 29-5-2017내 컴퓨터 (네덜란드)에서 와 같이 표시되며 제어판의 짧은 날짜 설정과 동일합니다. 이 동작과 관련하여 꽤 많은 스크립트를 작성했으며 로케일을 기반으로합니다. 그러나 이상하게도 설정을 변경 한 다음 명령 프롬프트를 열어도 변경되지 않습니다.
LPChip
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.