AppleScript: Take a file from a directory and find the file name and POSIX path. Next do a shell script passing the file name and path to the script AppleScript

On adding folder items to this_folder after receiving added_items
     try
          set filename to name of this_folder
          set p to POSIX path of this_folder
          do shell script "path to script/.sh" &amp;p &amp;filename
     end try
end adding folder items to


Shell script never gets the arguments.
Have tried several boards and several variations of the code above, but no joy.  What have I overlooked?
Errors in folder actions will fail silently unless you trap them.  You can use a try statement, but in your snippet you are ignoring errors, such as:


AppleScript itself doesn't know about file names, so you need to use something that does, such as Finder;
The shell uses spaces as delimiters between arguments, so you need to make sure they are used as needed when appending the various text items;
File paths should be quoted or special characters (spaces, etc) otherwise escaped to prevent misinterpretations.


I don't know the purpose of passing the folder name in addition to the full path (also note that a list of the dropped items are passed to the handler in the added_items argument), but after fixing the above items, your snippet would be something like:

on adding folder items to this_folder after receiving added_items
    try
        tell application "Finder" to set filename to name of this_folder
        set p to quoted form of POSIX path of this_folder
        do shell script "/path/to/script " &amp; p &amp; space &amp; quoted form of filename
    on error errmess number errnum
        display alert "Error " &amp; errnum message errmess
    end try
end adding folder items to