원글(이글루): 2010-12-17 13:30:42
몇 년전부터 svn같은걸로 소스 올려놓고 내가 짠것과 비교할때 라던지 할때 쓰고있는 스크립트이다.
정말 단순한 스크립트이나 도움이 될 사람이 있을까 하여 올려본다.
1) 용도
- 본인이 코딩을 했는데 커밋하기 전에 혹시 누가 바꿨는지 비교할때
- 본인이 코딩을 했는데 기존과 어떻게 바꿨는지 검증하면서 볼때
- 다른 분이 코딩한 것을 검증 해줄때 등등
2) 방식
- 지정한 디렉토리의 파일과 비교하여 (bin파일은 제외: bin파일여부는 readelf를 사용함)
내용이 상이한 경우 vimdiff로 열어줌.
3) 스크립트 코드
#!/bin/bash
DIR_NAME="/home/XXXX/OldProject/"
function is_bin
{
RET=`readelf -A $1 2>&1 |wc -l`
if [ "$RET" == "0" ]; then
return 1
fi
return 0
}
function is_dir
{
RET=`ls -ld $1`
if [ "${RET:0:1}" == "d" ]; then
return 1
fi
return 0
}
LIST=`ls ${DIR_NAME}`
for ACC in $LIST
do
is_bin $ACC
RET=$?
if [ $RET -eq 0 ]; then
is_dir $ACC
RET=$?
if [ $RET -eq 0 ]; then
RET=`diff $ACC ${DIR_NAME}/$ACC |wc -l`
if [ $RET -gt 0 ]; then
vimdiff $ACC ${DIR_NAME}/$ACC
fi
fi
fi
done
'IT > 프로그래밍' 카테고리의 다른 글
[svn] update칠때 날짜와 시간으로 하기 (0) | 2023.09.13 |
---|---|
[C/C++] Linux/Unix환경에서 ifdef 쉽게 추가하고 삭제하기 (0) | 2023.09.13 |
[python] dict 를 sort해서 list로 넣기 (0) | 2023.09.13 |
gdb command 활용#1 (0) | 2023.09.13 |
gdb stl의 list나 vector등 값 까보기 (0) | 2023.09.13 |