Windows-10 배치 파일은 DATE 명령을 기반으로 하며, 하위 Windows 버전에서 사용하는 방법

Windows-10 배치 파일은 DATE 명령을 기반으로 하며, 하위 Windows 버전에서 사용하는 방법

저는 두 개의 (가상) 컴퓨터에서 작업하고 있습니다.

  • 첫 번째는 Windows 10 컴퓨터입니다.
  • 두 번째는 Windows 7 시스템입니다.

둘 다 짧은 날짜 형식은 동일합니다. dd.MM.yyyy
둘 다 명령을 기반으로 동일한 배치 파일을 실행하고 있습니다 DATE.

명령 결과 의 결과와 관련하여 결과에 차이가 있습니다 DATE.

  • Windows 10의 경우:The current date is: st 22.03.2017
  • Windows 7의 경우:The current date is: 22.03.2017

보시다시피 차이는 오늘이라는 이름이 있기 때문입니다( st는 체코어 for 의 약어입니다 Wednesday).

Windows 10 시스템이 마스터이므로 제 질문은 요일 이름의 처음 두 글자를 포함하도록 Windows-7 시스템을 어떻게 변경할 수 있습니까?

테스트로서 저는 이미 짧은 날짜 형식에 대해 다음을 시도했습니다.

dd dd.MM.yyyy   // this is better, the length of the format is good,
                   but it does not start with the initials of the day's name.
dddd dd.MM.yyyy // this starts with the day's name, but completely, 
                   and I only want the first two letters.

그 사이에 나는 문제를 더 자세히 살펴보았습니다. 날짜 형식이 두 곳에서 사용되는 것 같습니다.

  1. 명령줄 명령 으로 작업하는 동안 ( 추가 처리를 위해 다음 DATE과 같은 형식이 필요합니다. )
    xx dd.MM.yyyyxx
  2. 다음 중 echo: for /r %DIRECTORY% %I in ("*.*") do echo %~tfI 아이디어는
    22.03.2016 13:50 <filename>다음 xx과 같이 타임스탬프와 파일 이름을 표시하는 것입니다.

답변1

dddWindows 7에서는 2자가 아닌 3자인 유사한 형식을 사용해야 합니다 .

그래서 당신은 사용할 수 있습니다ddd dd.MM.yyyy. 지원되는 형식입니다.

2개의 문자를 얻는 방법은 배치 파일을 사용하여 하나를 제거하는 것입니다.

답변2

정말 엉망이지만 문제에 대한 해결책을 찾았다고 생각합니다.

요점은 다음과 같습니다. Windows 10에서는 간단한 날짜 형식(예: dd.MM.yyyy) 을 사용하더라도 date /T명령줄에서 해당 날짜의 첫 번째 문자를 추가하므로 다음과 같은 결과를 얻습니다.

date /T
st 22.03.2017

그리고 내 동료들은 "st" 문자를 중심으로 배치 파일을 구축했습니다. 낮은 Windows 버전에서 해당 배치 파일을 실행하면 언급된 문제가 발생합니다.

배치 파일 시작 부분에 다음 줄을 추가했습니다.

DATE=xx %DATE%

(매우 유치하다는 점은 인정합니다.)
이렇게 하면 배치 파일이 내 Windows-7 컴퓨터에서 작동하게 됩니다.
두 시스템 모두에서 작동하게 하려면 플랫폼에 다음과 같은 검사를 추가하면 됩니다.

set WINDOWS_10=%ver | findstr /C:"Version 10"%
if "WINDOWS_10"=="" (
  set DATE=xx %DATE%)

Windows-10 PC에서는 아직 확인하지 않았지만 이것이 효과가 있을 것이라고 믿습니다.

관련 정보