zsh에서 이에 상응하는 내용 보기

zsh에서 이에 상응하는 내용 보기

에서는 (예를 들어 ) bash을 사용하여 고정된 간격으로 명령을 반복할 수 있습니다. watchwatch -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
}

관련 정보