Q:

Problem with empty spaces when executing shell commands in AppleScript

The following code to purge a directory recursively does not work because I cannot get past the Application Support folder.
try
    do shell script "rm -r ~/Library/Application\ Support/Google/Chrome/Default/Pepper Data/Shockwave Flash"
end try

If I use ~/Library/Application Support/Google... nothing happens. Which is expected.
If I use ~/Library/Application\ Support/Google... I cannot save the script due to the error message: Syntax Error Expected “"” but found unknown token.

How can I work around this error?

A:

Try:
set pathwithSpaces to "/Users/John/Desktop/This is a test.docx"
do shell script "rm -r " & quoted form of pathwithSpaces

A:

You have to double the backslashes and also escape the other spaces:
do shell script "rm -r ~/Library/Application\\ Support/Google/Chrome/Default/Pepper\\ Data/Shockwave\\ Flash"

or escape the path some other way:
do shell script "rm -r ~/'Library/Application Support/Google/Chrome/Default/Pepper Data/Shockwave Flash'"

quoted form of replaces ' with '\'' and surrounds the string with single quotes, so it doesn't work with paths that start with ~/.

A:

do shell script "open -n /Applications/App\\ Store.app"

Handle the space with \\.
For example replace App Store.app with App\\ Store.app.

