suggested by Ben Elliston. Handle weird characters correctly.
+2005-09-06 Paul Eggert <eggert@cs.ucla.edu>
+
+ * config/move-if-change: Don't output "$2 is unchanged";
+ suggested by Ben Elliston. Handle weird characters correctly.
+
2005-09-06 Stepan Kasal <kasal@ucw.cz>
* lib/autoconf/libs.m4 (AC_SEARCH_LIBS): Merge the two AC_LINK_IFELSE
#!/bin/sh
# Like mv $1 $2, but if the files are the same, just delete $1.
-# Status is 0 if $2 is changed, 1 otherwise.
-if test -r $2; then
- if cmp -s $1 $2; then
- echo $2 is unchanged
- rm -f $1
- else
- mv -f $1 $2
- fi
+# Status is zero if successful, nonzero otherwise.
+
+usage="$0: usage: $0 SOURCE DEST"
+
+case $# in
+2) ;;
+*) echo "$usage" >&2; exit 1;;
+esac
+
+for arg in "$1" "$2"; do
+ case $arg in
+ -*) echo "$usage" >&2; exit 1;;
+ esac
+done
+
+if test -r "$2" && cmp -s "$1" "$2"; then
+ rm -f "$1"
else
- mv -f $1 $2
+ mv -f "$1" "$2"
fi