35 lines
935 B
Python
Executable File
35 lines
935 B
Python
Executable File
#!/usr/bin/python3
|
|
# vi: set tabstop=4 shiftwidth=4 expandtab : #
|
|
# version: 3.20220218
|
|
|
|
import re
|
|
import os
|
|
|
|
pattern = re.compile('^\d{10}$')
|
|
unique_names = set()
|
|
list_files = sorted(os.listdir(path = '.'))
|
|
|
|
for filename in list_files:
|
|
if not os.path.isfile(filename):
|
|
continue
|
|
|
|
(original_name, ext) = os.path.splitext(filename)
|
|
if not (ext in ['.jpg', '.jpeg', '.jfif', '.png', '.gif', '.webp', '.mp4', '.MP4', '.webm']):
|
|
continue
|
|
|
|
if pattern.match(original_name) != None:
|
|
unique_names.add(original_name)
|
|
continue
|
|
|
|
file_mtime = int(os.stat(filename).st_mtime)
|
|
new_name = file_mtime
|
|
suffix = 1
|
|
while new_name in unique_names:
|
|
new_name = '%s-%d' % (file_mtime, suffix)
|
|
suffix = suffix + 1
|
|
unique_names.add(new_name)
|
|
full_new_name = '%s%s' % (new_name, ext)
|
|
print('%s -> %s' % (filename, full_new_name))
|
|
os.rename(filename, full_new_name)
|
|
|