If you have versioning enable, yes you can! On a versioned bucket, a delete action on a file does not really delete it but it adds a version with a "Delete Marker". You can delete the delete marker with the AWS CLI:
aws s3api delete-object --bucket yourbucket-name --key "yourfile" --version-id id_of_the_delete_marker
You can get all the files in the bucket with
aws --output text s3api list-object-versions --bucket yourbucket-name > files.txt
If you want to undelete all the files in the bucket you can try:
echo '#!/bin/bash' > undeleteScript.sh && aws --output text s3api list-object-versions --bucket yourbucket-name | grep -E "^DELETEMARKERS" | awk '' >> undeleteScript.sh && . undeleteScript.sh; rm -f undeleteScript.sh;