В настоящее время я пишу быстрый скрипт на Ruby, который просматривает все содержимое двух папок и возвращает список всех файлов, которых нет ни в одной из этих двух папок.В настоящее время я занимаюсь сохранением путей всех файлов каждого каталога в массиве:
Find.find(dir1) do |path|
if File.file?(path)
directory1_files << path # Add path to an array of file_paths for the 1st directory.
end
end # I repeat the process for the second directory and store their paths in an array called directory2_files.
Проблема, с которой я сталкиваюсь, заключается в том, что при попытке вычесть два массива (больший массив - маленький массив) чтобы получить оставшиеся файлы, я получаю пустой массив.Причина, по которой я это понял, заключается в том, что полные пути пытаются вычесть, а не только базовые имена.Пример: ~ / folder1 / file.txt! = ~ / Folder2 / file.txt Как найти файл с одинаковым именем в двух папках и удалить его из списка, чтобы единственными оставшимися файлами были те, которых нетв обеих папках?