summaryrefslogtreecommitdiff
path: root/bin/rcup
diff options
context:
space:
mode:
Diffstat (limited to 'bin/rcup')
-rwxr-xr-xbin/rcup52
1 files changed, 27 insertions, 25 deletions
diff --git a/bin/rcup b/bin/rcup
index 5ba4822..0bf3f35 100755
--- a/bin/rcup
+++ b/bin/rcup
@@ -15,28 +15,28 @@ link_or_copy() {
}
link_file() {
- local src=$1
- local dest=$2
+ local src="$1"
+ local dest="$2"
local sigil=$3
- if [ -h $dest ]; then
- $RM -f $dest
+ if [ -h "$dest" ]; then
+ $RM -f "$dest"
fi
action=`link_or_copy $sigil`
$DEBUG "$action $src $dest"
- $action $src $dest
+ $action "$src" "$dest"
}
replace_file() {
- local src=$1
- local dest=$2
+ local src="$1"
+ local dest="$2"
local sigil=$3
- $DEBUG replace_file $1 $2 $3
-
+ $DEBUG replace_file "$1" "$2" $3
+
$RM -rf $dest
- link_file $src $dest $sigil
+ link_file "$src" "$dest" $sigil
}
is_nested() {
@@ -49,39 +49,39 @@ is_identical() {
}
handle_dir() {
- local dest=$1
+ local dest="$1"
$DEBUG handle_dir $1
- dirname $dest | xargs $MKDIR -p
+ dirname "$dest" | xargs $MKDIR -p
}
handle_file() {
- local src=$1
- local dest=$2
+ local src="$1"
+ local dest="$2"
local sigil=$3
$DEBUG handle_file $1 $2 $3
if [ -e "$dest" ]; then
- if is_identical $src $dest; then
+ if is_identical "$src" "$dest"; then
$VERBOSE "identical $dest"
elif [ $REPLACE_ALL -eq 1 ]; then
- replace_file $src $dest $sigil
+ replace_file "$src" "$dest" $sigil
else
$PROMPT "overwrite ${dest}? [ynaq]"
read overwrite
case $overwrite in
a) REPLACE_ALL=1
- replace_file $src $dest $sigil
+ replace_file "$src" "$dest" $sigil
;;
- y) replace_file $src $dest $sigil ;;
+ y) replace_file "$src" "$dest" $sigil ;;
q) exit 1 ;;
*) $VERBOSE "skipping $dest" ;;
esac
fi
else
- link_file $src $dest $sigil
+ link_file "$src" "$dest" $sigil
fi
}
@@ -165,20 +165,22 @@ handle_command_line $*
run_hooks pre up
+saved_ifs=$IFS
+IFS='
+'
for dest_and_src in `lsrc $LS_ARGS`; do
- saved_ifs=$IFS
IFS=:
set $dest_and_src
IFS=$saved_ifs
- dest=$1
- src=$2
+ dest="$1"
+ src="$2"
sigil=$3
- if is_nested $dest; then
- handle_dir $dest
+ if is_nested "$dest"; then
+ handle_dir "$dest"
fi
- handle_file $src $dest $sigil
+ handle_file "$src" "$dest" $sigil
done
run_hooks post up