Browse Source

FIX: Escape directory name

Alexander Koblov 9 years ago
parent
commit
392809d13c
1 changed files with 6 additions and 2 deletions
  1. 6 2
      scripts/terminal.sh

+ 6 - 2
scripts/terminal.sh

@@ -3,7 +3,7 @@
 # Execute command in terminal emulator Mac OS X
 
 # Path to temporary script file
-SCRIPT_FILE=/var/tmp/doublecmd-$(date +%s)
+SCRIPT_FILE=$(mktemp /var/tmp/doublecmd-XXXX)
 
 # Add shebang
 echo "#!/usr/bin/env bash" > $SCRIPT_FILE
@@ -11,8 +11,12 @@ echo "#!/usr/bin/env bash" > $SCRIPT_FILE
 # Remove temporary script file at exit
 echo "trap 'rm -f $SCRIPT_FILE' INT TERM EXIT" >> $SCRIPT_FILE
 
+# Clear screen
+echo "clear" >> $SCRIPT_FILE
+
 # Change to directory
-echo "cd $(pwd)" >> $SCRIPT_FILE
+printf -v DIR "%q" "$(pwd)"
+echo "cd $DIR" >> $SCRIPT_FILE
 
 # Copy over target command line
 echo "$@" >> $SCRIPT_FILE