저도 쉘 초보지만
#!/bin/bash
for tarf in `ls $TARGET/*`
do
for srcf in `ls $SOURCE/$tarf`
do
diff $tarf $srcf >> $DIFF/$tarf
done
done
이정도면 님이 원하시는 작업은 할수 있을거라 생각됩니다.
$TARGET 밑의 파일을 읽어온후에
$SOURCE 밑의 그와 같은 이름의 파일을 srcf 로 하여
diff 하여 결과를 $DIFF에 저장합니다.
화이팅!
: Shell Script 작성으로 여러 파일에 대한 리스트를 읽어서 해당하는 Target
: Source를 diff하고 싶습니다.
:
: 예를 들면.
:
: TARGET=/home/user/TGT
: SOURCE=/home/user/SRC
: DIFF=/home/user/diff
: 이 두 디렉토리의 파일리스트는 언제나 같다고 가정합니다.
: 이 디렉토리 밑에는 50-100여개의 파일이 있습니다.
: 물론 파일이 하나라면
:
: diff $TARGET/a.c $SOURCE/a.c >> $DIFF/a.c
:
: 이렇게 하면 되지만 파일이 굉장히 많고 디렉토리가 많을 때는 이런 노가다가
: 쉽지가 않네요.
: 제생각에는 일단 파일 리스트를 읽어서 각각의 파일에 인덱스를 부여하고,
: For문을 돌면서 Diff를 하면 될것 같은데 밑천이 딸리니 쉽지가 않네요.
:
: 고수님들의 도움 부탁드립니다.