프로그램이 닫히자마자 프로그램의 실행 시간을 확인해야 하는데 이런 생각이 들었습니다.
start=`date +"%M"`
while [ `pgrep vlc` ];do
echo vlcopen > /dev/null
done
stop=`date +"%M"`
[ $stop -lt $start ]&&time=$[ 60-$start+$stop ]||time=$[ $stop-$start ]
echo $time > time.txt
그리고 그것은 일을 하지만 이것은 매우 비효율적이며 많은 컵 사용량을 필요로 합니다. 어떻게 하면 더 효율적으로 할 수 있을까요?
답변1
한 가지 옵션은 다음을 사용하는 것입니다.time
참고: Bash에는 키워드가 있으므로 time
그렇게 하면:
time some command
당신 time
이 사람에게서 발견하는 time
것은 대개 다음과 같습니다/usr/bin/time
$ type -t time
keyword
사용시 주요 포인트배쉬가 아닌-v
time은 (GNU ) 와 같은 기능입니다 time
.
다음도 참조하세요.time(1)의 출력에서 'real', 'user' 및 'sys'는 무엇을 의미합니까?
답변2
사용배쉬 SECONDS
변수:
SECONDS=0
# do stuff here, such as
sleep 5
duration=$SECONDS
echo "The stuff took $duration seconds to complete"
외부 프로세스를 생성할 필요가 없어 효율성이 향상됩니다.