파일 내용 내의 텍스트와 같이 서로 다른 형식의 날짜 스탬프가 있는 두 개의 데이터 파일이 있습니다. 두 날짜를 비교하고 쉘 스크립트의 날짜를 기반으로 한 파일에서 다른 파일로 변수를 인쇄하고 싶습니다. MATLAB에 스크립트가 있는데 이를 쉘 스크립트에서 실행하고 싶습니다. 한 파일의 날짜 형식은 입니다 2017-01-01 12:00:00
. 다른 파일의 경우 입니다 20170101 1200
. 변수의 경우 날짜와 비교하고 file1
from 의 열로 인쇄 변수와 일치하는지 확인합니다.file1
file2
답변1
매개변수 대체를 통해 일반 bash에서 이 작업을 수행할 수 있습니다.
dateA='2017-01-01 12:00:00'
dateB='20170101 1200'
tmpA=${dateA//[-:]/} # remove hyphens and colons
# next expansion excludes last 2 characters
[[ "${tmpA:0:-2}" == "$dateB" ]] && echo same || echo different
same
이전 bash 버전은 음수 길이를 지원하지 않지만 다음을 사용할 수 있습니다.${tmpA:0:${#tmpA}-2}