diff --git a/scripts/cpv b/scripts/cpv index 4d84e663..aae5026a 100755 --- a/scripts/cpv +++ b/scripts/cpv @@ -3,13 +3,6 @@ # cpv file dest # could extend with -r or copying multiple files -ln_or_cp () { - f=$(df $(dirname $1) | tail -1 | awk '{ print $1 }') - d=$(df $(dirname $2) | tail -1 | awk '{ print $1 }') - if [ "$f" != "$d" ]; then cmd="cp -p"; else cmd="ln"; fi - echo $cmd -} - file="$1" dest="$2" @@ -64,8 +57,12 @@ else fi # make new version and link it +ln $file $dest.~$new~ >/dev/null 2>&1 +if [ $? -ne 0 ] +then + cp -p $file $dest.~$new~ +fi -$(ln_or_cp $file $dest.~new~) $file $dest.~$new~ echo "Added $(basename $dest.~$new~) to $(dirname $dest.~$new~)" rm -f $dest ln $dest.~$new~ $dest