Gepapado
Gepapado

Reputation: 353

How can I use the do shell script in applescript?

I'm brand new to Applescript and also have some limited experience with Terminal. I made simple shell script today that I saved on my desktop. It's named "Test.sh" and just copies a file from one folder to another. When I run sh ~/Desktop/Test.shfrom within Terminal, everything runs just fine. However, when I type do shell script "/Volumes/volume_name/Users/username/Desktop/Test.sh" inside Xcode as an Applescript command, nothing happens. I am using Xcode 4.4.1 on Mac OS 10.7.4 (though I guess it's irrelevant). What am I missing?

Upvotes: 2

Views: 2964

Answers (3)

user3268208
user3268208

Reputation:

Enter Terminal and type the following:

cd ~
cd Desktop
sh Test.sh

Upvotes: 1

jackjr300
jackjr300

Reputation: 7191

Because the path of the startup disk doesn't begin with "/Volumes/"

Use this to get the correct path

set shScript to quoted form of POSIX path of ((path to desktop folder as string) & "Test.sh")
do shell script shScript

Upvotes: 2

Raghunandan  R
Raghunandan R

Reputation: 174

Let us consider that the applescript you want to run inside the shell script is to empty the trash. Follow these steps:

  1. Open Terminal
  2. type "touch sample.sh" and press return
  3. Type "chmod +x sample.sh" and press return
  4. Type "open -e sample.sh" and press return, this open text editor
  5. Paste the below code in text file and save it.

!/bin/bash

osascript -e 'tell application "Finder" empty trash end tell'

  1. Go back to terminal. Type "./sample.sh". this will result in empty trash.

Upvotes: 0

Related Questions