[apple] Darwin / OS X 고유의`watch ‘명령이 있습니까?

Linux에서 Darwin / OS X로 이식하려고하는 스크립트가 있습니다. Linux 버전은 현재 watch명령에 따라 다르며 기본적으로 Darwin / OS X에 설치되지 않은 것으로 보입니다. 기본 대안은 무엇입니까?



답변

기본 대안이 없습니다. 실제 실행 파일이 필요한 경우 watchHomebrew ( brew install watch) 또는 MacPorts ( port install watch) 를 사용하여 구입해야합니다 .

그러나의 기능을 에뮬레이션 할 수 있습니다 watch. 이는 표준 bash while 루프 ( Daniel Pittman의 스택 오버 플로우에서) 로 수행 할 수 있습니다 .

쉘 루프를 사용하여 기본 기능을 에뮬레이션 할 수 있습니다.

while :; do clear; your_command; sleep 2; done

그것은 영원히 반복되고 화면을 지우고 명령을 실행하고 2 초 동안 기다립니다-기본 watch your_command 구현.

한 단계 더 나아가서 your_command 및 sleep_duration을 매개 변수로 승인 할 수있는 watch.sh 스크립트를 작성할 수 있습니다.

#!/bin/bash
# usage: watch.sh <your_command> <sleep_duration>

while :;
  do
  clear
  date
  $1
  sleep
  $2
done

스택 오버플로에서 해당 옵션 및 기타 옵션을 사용할 수 있습니다.


답변