简体   繁体   中英

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.sh from 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?

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

Enter Terminal and type the following:

cd ~
cd Desktop
sh Test.sh

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.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM