I tried further out of curiosity and got a similar setup working. It's a USB harddisk, not a memory card, but it is the same way regarded as scsi device by my system.
Changes I did were:
/etc/udev/10-local.rules -- creates a consistent symlink for my hd (usbhd-trekstor1 is the only partition on it). Full path to script as well as to the calling shell!
Code:
BUS=="scsi", KERNEL=="sd*", ACTION=="add", SYSFS{model}=="HD400LD ", SYSFS{vendor}=="SAMSUNG ", NAME="%k", SYMLINK="usbhd-trekstor%n", RUN+="/bin/sh /etc/udev/scripts/trekstor.sh"
/etc/udev/scripts/trekstor.sh -- the folder didn't exist, but I liked to put the script somewhere near my rules. I'm not sure if the sleep and sync commands are necessary, but they won't harm anyway. I could not get any GUI message working using Xdialog, so I created a logfile that will contain all mount/cp/umount successes. No error checking here, but it works. Changed the script to executable (chmod +x /etc/udev/scripts/trekstor.sh).
Code:
#!/bin/sh
export LOGFILE="/var/log/trekstor.log"
sleep 10
/sbin/mount /dev/usbhd-trekstor1 /mnt/usbhd-trekstor1 && echo "successly mounted trekstor at $(date)" >> $LOGFILE
touch /var/log/trekstor.log
cp "/mnt/data/video/fertig-archiv/Higgins - OSullivan _ WM 2007 Viertelfinale.avi" /mnt/usbhd-trekstor1/Snooker/ && echo "done copying files at $(date)" >> $LOGFILE
sleep 5
/bin/sync
/sbin/umount /mnt/usbhd-trekstor1 && echo "successfully unmounted trekstor at $(date)" >> $LOGFILE
Restarted udev, switched on my external harddisk and -- voilą!
EDIT: Of course this might be broken in another environment. Slackware 11, kernel 2.7.17.13, udev version 097