diff --git a/handlers/rsync.in b/handlers/rsync.in
index ba966eebe98c3d1e1953ef4829bc02a2bb228508..e79b3bbef35f26e9e5e2637636a172d2e3696e2a 100644
--- a/handlers/rsync.in
+++ b/handlers/rsync.in
@@ -348,33 +348,33 @@ function rotate_short_remote {
   $ssh_cmd <<EOF
   ##### BEGIN REMOTE SCRIPT #####
 
-  if [ -d $folder.$keep ]; then
-    $nice mv /$folder.$keep /$folder.tmp
+  if [ -d "$folder.$keep" ]; then
+    $nice mv "/$folder.$keep" "/$folder.tmp"
   fi
 
   for ((n=$(($keep - 1)); n >= 0; n--)); do
-    if [ -d $folder.\$n ]; then
+    if [ -d "$folder.\$n" ]; then
       dest=\$((\$n + 1))
-      $nice mv /$folder.\$n /$folder.\$dest
-      touch /$folder.\$dest
-      mkdir -p $metadata/`basename $folder`.\$dest
-      date +%c%n%s > $metadata/`basename $folder`.\$dest/rotated
+      $nice mv "/$folder.\$n" "/$folder.\$dest"
+      touch "/$folder.\$dest"
+      mkdir -p "$metadata/`basename "$folder"`.\$dest"
+      date +%c%n%s > "$metadata/`basename "$folder"`.\$dest/rotated"
     fi
   done
 
-  if [ -d $folder.tmp ]; then
-    $nice mv /$folder.tmp /$folder.0
+  if [ -d "$folder.tmp" ]; then
+    $nice mv "/$folder.tmp" "/$folder.0"
   fi
 
-  if [ -d $folder.1 ]; then
-    $nice $cp -alf /$folder.1/. /$folder.0
+  if [ -d "$folder.1" ]; then
+    $nice $cp -alf "/$folder.1/." "/$folder.0"
   fi
 
   # Cleanup orphaned metadata
-  for file in \`ls $metadata\`; do
-    if [ ! -d "`dirname $folder`/\$file" ]; then
+  for file in "$metadata/"*; do
+    if [ ! -d "`dirname "$folder"`/\$file" ]; then
       echo "Debug: removing orphaned metadata \$file"
-      rm -rf $metadata/\$file
+      rm -rf "$metadata/\$file"
     fi
   done