Mi primer consejo sería nombrar los archivos usando la fecha y hora en que fueron tomados. De esa manera, no necesitará mantener un contador en ningún lado, lo que sería difícil en un script que no se ejecuta continuamente, ya que sus variables se restablecerían en cada invocación. Puede almacenar las variables en archivos, pero es más fácil si se asegura de que los nombres no colisionen. Algo así como wget http://127.0.0.1:8080/?action=snapshot -O "Snapshot-$(date).jpg"
si está utilizando Bash. (Lo siento si la sintaxis no funciona, no soy un experto en Bash y estoy escribiendo esto en mi teléfono).
Como mencionaste, hay varios tutoriales disponibles sobre secuencias de comandos para cargas de FTP. Al menos uno de ellos debería haber incluido un ejemplo que carga archivos por un patrón, como "Snapshot-*.jpg", donde el comodín coincidiría con la marca de tiempo. O bien, puede señalar el programa FTP (como lftp o ncftp, que tienen archivos binarios destinados a secuencias de comandos) para cargar todo en una carpeta determinada. Luego limpie la carpeta si el programa tuvo éxito. De esa manera, puede ejecutar su secuencia de comandos con la frecuencia que desee usando cron o un temporizador systemd, y hacer que sea lo suficientemente flexible como para intentar cargar siempre cualquier archivo que no haya tenido éxito con el último. tiempo que corrió.
También hay software diseñado para hacer esta tarea, y más, por su cuenta. Uno de esos programas, que yo mismo he usado, se llama simplemente "motion" y está disponible para la mayoría de las distribuciones. Tiene activación de movimiento incorporada (grabar y/o tomar instantáneas) o modos continuos. Puede consumir un poco de CPU en sistemas como Raspberry-Pi, pero sin duda funciona.
Si desea mejorar un poco, tal vez ejecutar varias cámaras remotas/locales y descargar la detección de movimiento a una máquina central más potente, consulte Zoneminder. Lleva más tiempo configurarlo y, según mi experiencia, es quisquilloso con la configuración manual de las resoluciones correctas en las imágenes de la cámara, pero se puede programar hasta cierto punto.