Используйте эту команду:
find $PWD -type f -printf '%f %h/%f/n'
или
Ищите какие-то файлы, а затем переходите к этому:
find $PWD -type f -iname "filenames" -printf '%f %h/%f/n'
Лучшим решением в этом случае, вероятно, будет изменение исходного кода shuf
или аналогичной программы.
Затем вы можете выбросить часть ввода, использовать только часть перетасовки и записать индексы. Может оказаться полезным не преобразовывать индексы в строки, а записывать их в двоичном виде без разрывов строк в файл, потому что файл будет намного меньше (и, следовательно, будет быстрее читаться ).