"MM/DD/YY" 형식의 날짜를 가져와서 기본 날짜 형식(2014년 10월 31일 금요일 17:23:07 CDT)으로 다시 변경할 수 있어야 합니다. 이것이 나를 미치게 만든다. 아래 코드는 무의미해 보일 수 있지만 이는 제가 해야 할 숙제일 뿐입니다. 누군가가 MM/DD/YY 형식으로 날짜를 입력한 다음 해당 날짜를 기본 형식의 파일에 저장된 날짜와 비교해야 합니다.
제가 있는 곳은 다음과 같습니다.
#! /bin/bash
date=`date +%D`
newdate=`$date +%a%b%e%H:%M:%S%Z%Y`
echo $newdate
"해당 파일이나 디렉터리가 없습니다." 오류가 발생합니다. 첫째, 내가 하고 싶은 일을 어떻게 하는가? 둘째, "+%a%b%e...blah blah..." 대신 기본 날짜 형식을 사용하는 더 쉬운 방법이 있습니까?
도와주셔서 감사합니다.
답변1
나는 당신을 위해 숙제를 하고 싶지 않지만 이것이 당신에게 올바른 방향을 제시할 수 있습니다.
#!/bin/sh
date=`date +%D`
echo "Date in MM/DD/YY:"
echo $date
newdate=`date -d $date +"%a %b %e %H:%M:%S %Z %Y"`
echo "Date Expanded:"
echo $newdate
hash="$(echo -n "$newdate" | md5sum | awk '{print $1}')"
echo "Hash of expanded date:"
echo $hash
비교해야 하는 날짜를 포함하여 모든 연장 날짜의 해시를 만든 다음 두 해시만 비교할 수 있습니다. 그렇다면 ==
당신은 일치하는 사람이 있습니다.
if [ "$hash1" == "$hash2" ]
then
echo "Dates are a match!"
else
echo "Dates are NOT a match..."
fi