Я пытаюсь скопировать файлы из общего ресурса AFP в общий ресурс SMB.
Несколько файлов на общей папке AFP имеют ?
во имя. Если я попытаюсь скопировать их, я получу неверный аргумент ».
Я не знаю, как файлы получили ?
в названии в первую очередь.
Вот пример:
user$ cp tes?t /mnt/share/
cp: tes?t: invalid argument
Я попытался переименовать файл, но получаю сообщение об ошибке «Ресурс занят».
Что я могу сделать, чтобы скопировать файлы?
Выйдите из маски вопроса с помощью обратной косой черты:
$ cp tes\?t /mnt/share/
В ?
символы представляют собой нераспознанные символы.
Скорее всего, проблема здесь в том, что AFP использует имена файлов UTF-8, но вы не вошли в систему, которая смонтировала общий ресурс AFP с использованием локали UTF-8. Если это Linux, вы можете проверить свою локаль, используя locale
команда.
Если вы обнаружите, что он не использует языковой стандарт UTF-8, вы можете временно изменить языковой стандарт, например:
export LC_ALL="en_US.UTF-8"
Удаляет ?
опция? Это недопустимый символ для файла или имени пути в NTFS-совместимых файловых системах, поскольку на самом деле это односимвольный подстановочный знак.
В resource busy
ошибка, вероятно, является результатом ?
интерпретируется как подстановочный знак, и файловая система пытается получить доступ ко всем возможным недопустимым именам файлов, которые, по ее мнению, могут означать.
Я уверен, что вам придется получить доступ к файлам из файловой системы, которая не учитывает ?
недопустимый символ (допустим ли он на Mac?) для замены ?
с действующим.