move-if-change revision 256281
1139749Simp#!/bin/sh 250702Swpaul# Like mv $1 $2, but if the files are the same, just delete $1. 350702Swpaul# Status is zero if successful, nonzero otherwise. 450702Swpaul 550702Swpaulusage="$0: usage: $0 SOURCE DEST" 650702Swpaul 750702Swpaulcase $# in 850702Swpaul2) ;; 950702Swpaul*) echo "$usage" >&2; exit 1;; 1050702Swpaulesac 1150702Swpaul 1250702Swpaulfor arg in "$1" "$2"; do 1350702Swpaul case $arg in 1450702Swpaul -*) echo "$usage" >&2; exit 1;; 1550702Swpaul esac 1650702Swpauldone 1750702Swpaul 1850702Swpaulif test -r "$2" && cmp -s "$1" "$2"; then 1950702Swpaul rm -f "$1" 2050702Swpaulelse 2150702Swpaul mv -f "$1" "$2" 2250702Swpaulfi 2350702Swpaul