I haven't really done much in the way of bash scripts before so any help would be appreciated!
I've added this function to my .bash_profile:
function test()
{
osascript -e 'tell app "System Events" to display dialog "$1"'
echo "my name is $1"
}
The second line works fine, however, the first line will just show $1 in the dialog. I have tried a few variations to that line as well as:
osascript <<EOD
tell app "System Events" to display dialog "$1"
EOD
Is there a certain way I need to concatenate $1
on the osascript line, or is there a better way to do this?
In order to expand the variable
$1
, it must be within double quotes. The outer quotes are single, which is preventing the expansion. Try this:The inner double quotes are escaped, which means they will be passed correctly.
I have also removed the
function
keyword as it serves no useful purpose (except to make your script incompatible with other shells).