Как преобразовать путь из DOS в URI схемы файла в пакетном файле - PullRequest
3 голосов
/ 10 февраля 2011

Я пытаюсь написать командный файл для svnsync, который нуждается в URL-адресах репозиториев SVN.Остальная часть пакетного файла использует% ~ dp0 для получения пути к пакетному файлу, но это не работает с svnsync.

Каков наилучший способ преобразовать путь (скажем,% ~ dp0repo, который расширяется до c: \ backup \ repo) в uri, подходящий для svnsync (file: /// c: / backup / repo)?

В идеале он мог бы обрабатывать пробелы и то, что не находится в пути, поэтому я бы предпочел избегать использования какой-либо явной замены символов для преобразования из пути в URL - но если это единственный способ,да ладно.

Спасибо!

1 Ответ

4 голосов
/ 10 февраля 2011

Из вашего рецепта кажется, вам нужно только:

  • Заменить \ на /
  • Палка file:/// спереди

Вот и мы:

set DOSPATH=%~dp0repo
set URI=file:///%DOSPATH:\=/%
...