Exiftool has an -alldates parameter:
exiftool -alldates-=24 -filemodifydate-=24 -filecreatedate-=24   *.jpg
The above code works to subtract 24 hours according to this Forum comment (by Phil Harvey):
https://exiftool.org/forum/index.php?topic=6330.msg31354#msg31354
 You can combine the above code with an -out file specification, like -out ./newJPG.jpg or (in a new directory), with -out ./newdir/newJPG.jpg. The -out specification gets inserted directly after the call to exiftool.
 You can also try adding to the -out file specification ( after making backups! ), with the option  -overwrite_original OR  -overwrite_original_in_place, inserted directly after the call to exiftool. See exiftool --help for details.
 Note, an earlier revision of this post suggested using the  -globalTimeShift parameter, as in:
exiftool -globalTimeShift -24 -time:all  *.jpg
 However (according to Phil Harvey), "The -globalTimeShift option is needed only when you want to copy a shifted date/time value to another tag.", such as a -geo tag. See:
https://exiftool.org/forum/index.php?topic=9224.msg47655#msg47655
https://exiftool.org/forum/index.php?topic=6330.msg31354#msg31354
https://exiftool.org/exiftool_pod.html
https://exiftool.org/