Лучшие практики для переименования файлов, созданных в Unix, которые имеют специальные символы в Windows?

Я передаю файлы на сервере Unix клиентам Windows. Если имя файла содержит специальный символ Windows, например ", я, конечно же, получаю следующее сообщение об ошибке: The filename, directory name, or volume label syntax is incorrect. Поэтому мне нужно выбрать другое имя файла.

Существуют ли какие-либо соглашения или «лучшие методы» для переименования файлов, чтобы я отфильтровывал специальные символы? На данный момент я бы заменил их символами подчеркивания или процентно-кодированными символами, но я хотел бы посмотреть, не лучше ли попробовать что-то еще.

Примечание: я использую Java, поэтому, если есть встроенные или сторонние утилиты (о которых я не знаю) для решения этой проблемы, ссылки на них были бы фантастическими. Но независимое решение подойдет.


person 2rs2ts    schedule 11.04.2014    source источник


Ответы (1)


попробуйте использовать обратную косую черту перед знаком ' " ' как имя файла/".txt . Попробуйте, если получится. Поскольку обратная косая черта в сценарии unix делает любые специальные символы, такие как *, "и т. д., нечитаемыми оболочкой.

person 10hero    schedule 12.04.2014
comment
Вы имеете в виду / или \ ? \ — это обратная косая черта. Кроме того, Windows не допускает обратную косую черту в именах файлов, см. ссылку в моем вопросе. - person 2rs2ts; 14.04.2014