Em vez de observar o nome do arquivo, você pode confiar em seu servidor HTTP para informar quando foi a última vez que o arquivo foi alterado e agir de acordo.
#!/bin/bash
remote_file="http://mywebsite/file.zip"
local_file="/storage/file.zip"
modified=$(curl --silent --head $remote_file | \
awk '/^Last-Modified/{print $0}' | \
sed 's/^Last-Modified: //')
remote_ctime=$(date --date="$modified" +%s)
local_ctime=$(stat -c %z "$local_file")
local_ctime=$(date --date="$local_ctime" +%s)
[ $local_ctime -lt $remote_ctime ] && /storage/scripts/script.sh
# end of file.