껍데기
현재 날짜에 경과된 시간(분)을 출력하기 위해 쉘 함수(및 날짜 명령)만 사용하는 쉘 스크립트를 어떻게 작성할 수 있습니까?
답변1
비지정자는 리터럴로 처리 되므로 date
형식 문자열을 사용하여 현재 분에 대한 간단한 산술 표현식을 구성한 다음 셸의 내장 산술을 사용하여 결과를 계산할 수 있습니다. 예를 들어,bash
printf "$(( $(date '+%H * 60 + %M') ))\n"
쉘이 산술을 지원하지 않는 경우 외부 계산기를 사용할 수 있습니다.bc
date '+%H * 60 + %M' | bc
또는dc
date '+%H 60 * %M + p' | dc
답변2
GNU date
및 bash
:
daystart_sec="$(date --date="today 00:00:00" +%s)"
now_sec="$(date +%s)"
echo $(((now_sec-daystart_sec)/60))
답변3
하루에 남은 시간(예: 1440분)에서 하루에 경과한 시간(분)을 어떻게 뺄 수 있나요? 그래서 기본적으로 위의 출력을 1440에서 빼고 싶습니다.