특정 시간 동안(자정부터 오전 00시 15분까지)에만 실행될 수 있는 Bash 스크립트가 있습니다. 하지만 함수를 실행하면 [: too many arguments
오류 메시지가 나타납니다. 어떻게 해결할 수 있나요? 나는 아직도 Bash를 사용하고 싶다. 저는 Ubuntu Server 20.04 LTS를 사용하고 있습니다.
스크립트:
currTime=`date +%H%M`
check_time_to_run() {
tempTime=$1
if [ $tempTime -gt 0 -a $tempTime -lt 015 ]; then
echo "Time is after 0 AM and before 0:10 AM. Restarting Server."
else
echo "Time is not between 0 AM and 0:15 AM. Aborting restart."
exit 1
fi
}
답변1
진술을 분석해 볼 수 있습니다.
if [ $tempTime -gt 015 ] && [ $tempTime -lt 0 ]; then
stuff...
fi
또는 이중 괄호를 사용하여 표현식의 이진 결과를 테스트합니다.
if [[ $tempTime -gt 015 && $tempTime -lt 0 ]]; then
stuff...
fi