터미널에서 바삭바삭한 파일 모니터링 및 자동 실행 스크립트

개요



터미널에서 파일 업데이트를 잡고 지정된 명령을 실행하는 스크립트

참고



참고라고 할까 거의 이것의 전재, 플러스 전후의 순서
htp : // 미z 치. 하테나 bぉg. 코m/엔트리/2013/01/27/204343

전제


  • 쉘 스크립트가 실행될 수 있는 환경

  • 절차



    1. 쉘 스크립팅



    적절한 디렉토리에서
    vi watch.sh
    

    watch.sh
    #!/bin/sh
    if [ $# -ne 2 ]; then
            echo "実行するには2個の引数が必要です。
            第一引数: 監視対象ファイル名
            第二引数: 監視対象ファイルが更新された際に実行されるコ>マンド
            例: ./autoexec.sh a.cpp 'g++ a.cpp && ./a.cpp'"
            exit 1
    fi
    echo "監視対象 $1"
    echo "実行コマンド $2"
    INTERVAL=1 #監視間隔, 秒で指定
    last=`ls --full-time $1 | awk '{print $6"-"$7}'`
    while true; do
            sleep $INTERVAL
            current=`ls --full-time $1 | awk '{print $6"-"$7}'`
            if [ $last != $current ] ; then
                    echo ""
                    echo "updated: $current"
                    last=$current
                    eval $2
            fi
    done
    

    쉘 스크립트 실행을 위한 권한 부여(필요 없을지도?)
    chmod u+x watch.sh
    

    2. 완성



    실행해보기
    ./watch.sh test.php "php test.php"
    



    너무 훌륭합니다,,, 감사합니다,,,
    h tp : // 미z 치. 하테나 bぉg. 코m/엔트리/2013/01/27/204343
    ,,,,

    지속적으로 사용하기보다는 갑자기 모니터링 요구가있을 때 유용합니다.

    좋은 웹페이지 즐겨찾기