trunk
Last change
on this file since 22a2ffd was
22a2ffd,
checked in by mitty <mitty@…>, 12 years ago
|
- #55
- recursively exec cmpdir script in cmpdir
- cmpdir dir1 dir2 target -> check dir1/target dir2/target and then cmp dir1/target dir2/target
- almost finished
git-svn-id: https://lab.mitty.jp/svn/lab/trunk@171 7d2118f6-f56c-43e7-95a2-4bb3031d96e7
|
-
Property mode set to
100755
|
File size:
1.1 KB
|
Line | |
---|
1 | #! /bin/sh |
---|
2 | |
---|
3 | if [ $# -lt 2 ]; then |
---|
4 | echo "Usage: $0 directory1 directory2" |
---|
5 | exit 1 |
---|
6 | fi |
---|
7 | if [ $# -eq 3 ]; then |
---|
8 | [ -d "$1/$3" ] && [ -d "$2/$3" ] && |
---|
9 | exit |
---|
10 | [ ! -e "$1/$3" ] && [ ! -e "$2/$3" ] && |
---|
11 | echo "$0: something wrong abount '$3'" >&2 && exit |
---|
12 | [ -e "$1/$3" ] && [ ! -e "$2/$3" ] && |
---|
13 | echo "Only in '$1': '$3'" >&2 && exit |
---|
14 | [ ! -e "$1/$3" ] && [ -e "$2/$3" ] && |
---|
15 | echo "Only in '$2': '$3'" >&2 && exit |
---|
16 | [ -f "$1/$3" ] && [ -d "$2/$3" ] && |
---|
17 | echo "'$1' is a regular file but '$2' is a directory" >&2 && exit |
---|
18 | [ -d "$1/$3" ] && [ -f "$2/$3" ] && |
---|
19 | echo "'$1' is a directory but '$2' is a regular file" >&2 && exit |
---|
20 | |
---|
21 | cmp -s "$1/$3" "$2/$3" || echo "$1/$3" "$2/$3" are differ >&2 |
---|
22 | exit |
---|
23 | fi |
---|
24 | if [ -d "$1" -a -d "$2" ]; then |
---|
25 | echo "$0: start comparing '$1' and '$2'" >&2 |
---|
26 | fi |
---|
27 | |
---|
28 | list=`mktemp --tmpdir cmpdir.list.XXXXXXXXXX` || exit 1 |
---|
29 | tmp=`mktemp --tmpdir cmpdir.tmp.XXXXXXXXXX` || exit 1 |
---|
30 | trap "rm -- '$list' '$tmp'" EXIT |
---|
31 | |
---|
32 | wc=$PWD |
---|
33 | cd "$1" |
---|
34 | find -print0 >> "$tmp" |
---|
35 | cd $wc |
---|
36 | |
---|
37 | cd "$2" |
---|
38 | find -print0 >> "$tmp" |
---|
39 | cd $wc |
---|
40 | |
---|
41 | sort -z "$tmp" | uniq -z > "$list" |
---|
42 | |
---|
43 | |
---|
44 | xargs -a "$list" -0 -n 1 -I entry $0 "$1" "$2" "entry" |
---|
Note: See
TracBrowser
for help on using the repository browser.