웹 사이트가있는 여러 git 저장소가 있습니다. 특정 파일 이벤트를 모니터하고 git push 및 git pull 스크립트를 자동으로 실행하기 위해 복제 된 로컬 버전에 대해 inotifywait를 실행하고 싶습니다.inotifywait를 사용하여 여러 디렉토리를 감시하고 스크립트를 실행하십시오.
지금까지 각 디렉토리에 대해 별도의 함수로 스크립트를 만들었지 만 첫 번째 함수 만 호출됩니다. 내가 createa 10 별도의 스크립트를 관리 할 필요없이 완벽하게 작동, 더 효율적이고 더 중요한 코드의이 비트를 구성 할 수 있습니까
#!/usr/bin/env bash
dbg() {
inotifywait -mr -e ATTRIB /path/to/dbg/ |
while read dir ev file;
do
cd /path/to/dbg
git pull;
git add .;
git commit -m " something regarding this website has changed. check .... for more info";
git push;
ssh [email protected] 'cd /path/to/web/root; git pull';
done;
}
dbg;
website2() {
same thing as above
}
website2;
website3() {
same thing as above
}
website3;
.......
website10() {
........
}
website10;
. 정말이 논리를 하나의 파일에 보관하고 싶습니다.이 모듈을 하나의 모듈로 사용하여 더 큰 프로젝트를 진행하고 싶습니다.
개선 할 수 있도록 제 질문, 문법, 사고 과정 등을 비평 해주십시오. 감사합니다.