(..에 IDE를 발사하지 않고 내가 십오 일을 많이하면 파일을 변경할 때 프로젝트가 다시 할 수있어) 있지만 이후
inotifywait --exclude '.*\.swp|.*\.o|.*~' --event MODIFY -q -m -r . |
while read
do make
done
그 아래 속보 :
inotifywait
당신이 뭔가를 할 수 있습니다), OS X에 대한
this question를 참조하십시오, 당신은 그것에 대해 당신이 리눅스에있어 좋은 기회가 보인다 확인 물었다
파일 시스템 이벤트를 수신합니다.
--exclude '.*\.swp|.*\.o|.*~'
는 (아마 당신은이 목록에 추가 할 수 있습니다) .swp
, .o
또는 ~
로 끝나는 파일을 제외합니다.
--event MODIFY
찾을 때 이벤트가 발생한 파일의 파일 경로를 출력하십시오.
-q
시작 메시지를 인쇄하지 마십시오. 따라서 make가 조기에 호출되지 않습니다.
-m
계속 들어요.
-r .
현재 디렉토리에서 재귀 적으로 듣기. 그런 다음 모든 루프를 읽을 때마다 make를 호출하는 간단한 루프로 파이프됩니다.
필요에 맞게 조정하십시오. inotifywait --help
이 있으며 맨 페이지가 도움이 될 수 있습니다.
다음은 자세한 스크립트입니다. 나는 그것을 많이 테스트하지 않았으므로 분별력을 가지고 사용하십시오. Git에서 분기를 전환 할 때와 같이 빌드가 불필요하게 반복해서 발생하지 않도록하기위한 것입니다.
#!/bin/sh
datestampFormat="%Y%m%d%H%M%S"
lastrun=$(date +$datestampFormat)
inotifywait --exclude '.*\.swp|.*\.o|.*~' \
--event MODIFY \
--timefmt $datestampFormat \
--format %T \
-q -m -r . |
while read modified; do
if [ $modified -gt $lastrun ]; then
make
lastrun=$(date +$datestampFormat)
fi
done
리눅스 사용자는 bash 스크립트와'inotifywait'을 사용할 수 있습니다. – Dan
다음은 꽤 좋은 모니터 모드를 가진 다른 빌드 시스템입니다 : http://gittup.org/tup/ 그냥'tup monitor -a -f'를 실행하십시오 – leafo
이 질문은 http://stackoverflow.com의 중복이라고 생각합니다./questions/1515730/is-there-a-command-like-watch-or-inotifywait-on-the-mac 또는 적어도 fswatch 응답은 http : // stackoverflow와 같은 질문에 답합니다.co.kr/questions/1515730/is-there-a-command-like-watch-or-inotifywait-on-the-maC# 답 13807906 – Nathan