에서는 (예를 들어 ) bash
을 사용하여 고정된 간격으로 명령을 반복할 수 있습니다. watch
watch -n 5 ls -l
이 명령은 zsh에 없는 것 같습니다. 이에 상응하는 것이 있습니까?
답변1
watch
내부 명령이 아닙니다.
$ type watch
/usr/bin/watch
따라서 실행 중인 시스템에 이 프로그램이 설치되어 있는지 확인하십시오 zsh
.
답변2
방금 즉흥적으로 시청했습니다.clear; while ls -lah; do sleep 2; clear; done
흥미로운 아이디어입니다. 그 주위에 함수를 작성할 수도 있습니다... 음, .zshrc에 넣으세요.
watch () {
IN=2
case $1 in
-n)
IN=$2
shift 2
;;
esac
printf '\033c' # clear
CM="$*"
LEFT="$(printf 'Every %.1f: %s' $IN $CM)"
((PAD = COLUMNS - ${#LEFT}))
while :
do
DT=$(date)
printf "$LEFT%${PAD}s\n" "$HOST $(date)"
eval "$CM"
sleep $IN
printf '\033c'
done
}