Print to Stdout with applescript
applescript
Solution
Its is not very clear HOW you are trying to run it in Terminal. But I will assume you have saved a applescript text file with the `#!/usr/bin/osascript` shebang, and `chmod`'ed the file to be able to execute it.
Then called the file in Terminal, by just using the path to the file.
#!/usr/bin/osascript
#Here be the rest of your code ...
set output to ("Song: " & song & " - " & artist & " - " & album)
do shell script "echo " & quoted form of output
end tell
Update 2, in response to comments.
If I have a tab delimited text file with the content as:
track Skin Deep Beady Belle Closer
The tabs are set like : track****TAB****Skin Deep****TAB****Beady Belle****TAB****Closer
And the script file as:
on run fileName
set unique_songs to paragraphs of (read POSIX file fileName)
repeat with nextLine in unique_songs
if length of nextLine is greater than 0 then
set AppleScript's text item delimiters to tab
set song to text item 2 of nextLine
set artist to text item 3 of nextLine
set album to text item 4 of nextLine
set output to ("Song: " & song & " - " & artist & " - " & album)
do shell script "echo " & quoted form of output
end if
end repeat
end run
Then in Terminal run:
/usr/bin/osascript ~/Documents/testOsa2.scpt ~/Documents/testTab.txt
I get back:
*Song: Skin Deep - Beady Belle - Closer*
Problem
I'm trying to run an AppleScript script from the terminal, however I can't get it to print anything by calling ``` osascript myFile.scpt "/path/to/a/file" ``` I'm trying: ``` on run fileName set unique_songs to paragraphs of (read POSIX file fileName) repeat with nextLine in unique_songs if length of nextLine is greater than 0 then set AppleScript's text item delimiters to tab set song to text item 2 of nextLine set artist to text item 3 of nextLine set album to text item 4 of nextLine set output to ("Song: " & song & " - " & artist & " - " & album) copy output to stdout end if end repeat end run ``` The tab delimited file is formatted something like this: ``` 1282622675 Beneath the Balcony Iron & Wine The Sea & the Rhythm 1282622410 There Goes the Fear Doves (500) Days of Summer 1282622204 Go to Sleep. (Little Man Being Erased.) Radiohead Hail to the Thief ``` Tabs aren't really showing up well on this :(