Заодно уж…

Починил этим вот способом и транслителирующий ренеймер, который таки транслителирует имена файлов на русском языке и таки переименовывает их

Исходники

Скачать

Бинарник (EXE)
SFX-архив (Распаковывается в каталог Windows)
ZIP-архив

Совместимость: Windows XP — Windows 10 (98 и Win11 не тестировались)

Окончательное решение о рандомном переименовании файлов в Windows

Преамбула

Уже поднимал этот вопрос здесь (копия), в общем, нативного решения не нашел, написал простенькую утилиту Random Renamer.

Краткая справка

Random renamer (rr), this program rename files to random names
v 0.0.1b (L) ChaosSoftware 2023.

Использование: rr.exe [параметры] | -h
-h — помощь
-m <mask> — Маска файлов для переименования. Параметр обязательный.
Или используйте параметр -r для переименования только каталогов.
[-a] <номер> — задать алфавит для генерации случайного имени, значение по умолчанию 0
[-d] — стартовая директория, по умолчанию — текущая
[-l] <число> — длина имени, по умолчанию 8
[-r] — переименовывать директории
[-s] — включая подкаталоги
[-v] — отображать процесс на экране
[-x] <число> — длина расширения, по умолчанию 3, каталогам расширение не присваивается.

Алфавиты:
0: abcdefghijklmnopqrstuvwxyz0123456789
1: ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789
2: ABCDEF0123456789
3: abcdef0123456789
4: 0123456789
5: abcdefghijklmnopqrstuvwxyz
6: ABCDEFGHIJKLMNOPQRSTUVWXYZ

По умолчанию: 0

Исходник

На GitHub

Бинарник (EXE for Windows)

Скачать

Использование

Положить бинарник в один из каталогов %PATH%, например, в C:\Windows и пользоваться.

Потом сделаю пример, как его со shred‘ом в BAT/CMD использовать.

FreePascal: TStringList надо инициализировать nil’ом

Вот как-то так:

var
...
lstFiles:TStringList=nil; lstDirs:TStringList=nil;

Иначе возможен плавающий глюк, который внезапно может вылезти где угодно при обращении к TStringList. Возьмет и вылезет EAccessViolation, так что про инициализацию забывать не надо. Делал маленькую внутрикорпоративную утилиту, два дня потерял, отлаживая странный глюк, а вот оно как оказалось.