A simple PowerShell script to rename photos by changing the format of the timestring in its filename.
^(\d{4})[\s-_\.]?(\d{2})[\s-_\.]?(\d{2})[\s-_\.]?(\d{2})[\s-_\.]?(\d{2})[\s-_\.]?(\d{2})[\s-_\.]*
^(IMG|VID)_(\d{4})(\d{2})(\d{2})_(\d{2})(\d{2})(\d{2})[\s-_\.]*
^(Photo|Video)[\s-_\.](\d{4})[\s-_\.](\d{2})[\s-_\.](\d{2})[\s-_\.](\d{2})[\s-_\.](\d{2})[\s-_\.](\d{2})[\s-_\.]*
^WP_(\d{4})(\d{2})(\d{2})_(\d{2})_(\d{2})_(\d{2})[\s-_\.]*
^(\d{4})(\d{2})(\d{2})_(\d{2})(\d{2})(\d{2})\d{3}_iOS
^FullSizeRender-(\d{2})-(\d{2})-(\d{2})-(\d{2})-(\d{2})[-]?
^IMG_(\d{4})-(\d{2})-(\d{2})-(\d{2})-(\d{2})-(\d{2})
^(\d{2})-(\d{2})-(\d{2})[\s-_](\d{2})-(\d{2})-(\d{2})[\s-_\.]*
Source directory to read the files from.
Destination directory to move the files to.
The format of the new timestring.
Default is "yyyy-MM-dd HH-mm-ss
".
The separator between the timestring and the old filename suffix.
Default is "
".
Switch whether to use subfolders in the destination or not.
Default is "$false
"
The format to create subfolders in the destination.
Possible values are "yyyy\\MM
", "yyyy-MM
", or "yyyy
".
Default is "yyyy\\MM
".
Switch whether to scan the source recursive.
Default is "$false
".
Switch how to treat the file extension.
Possible values are "UpperCase
", "LowerCase
", and "Keep
".
Default is "Keep
".