Jag hackade ihop ett litet shellscript som gör det jag tror att du vill göra.
#!/bin/sh
### PATH to dir with files ###
local_dir=/Users/kalle/Pictures
ftp_dir=/public_html/bilder
ftp_user=kalle
ftp_passwd=hemligt
ftp_host=ftp.kalle.se
remote_filename=min_slumpmassiga_bild.jpg
### Select a random file ###
files=($local_dir/*)
num_files=${#files[*]}
randomfile=$((RANDOM%$num_files))
file=${files[$randomfile]}
### Put file on ftp ###
ftp -u ftp://$ftp_user:$ftp_passwd@$ftp_host$ftp_dir/$remote_filename "$file" > /dev/null
Hur du ska sätta variablerna ser du förhoppningsvis. Bilden som laddas upp kommer alltså att döpas till "min_slumpmassiga_bild.jpg", oavsett vad den heter lokalt i mappen där du har alla dina bilder.
Jag tar dock inget ansvar om det här skulle bugga ut och göra något dumt, det är bara ett snabbt litet kvällshack.
Edit: ftp_dir blir relativ till din hemkatalog på servern.
Dvs, ska bilden hamna under /home/kalle/public_html/pics så ska ftp_dir sättas till /public_html/pics .