svnlook cat -t не работает в Windows (когда я создавал скрипт.bat)
Я пытаюсь написать сценарий.bat в качестве ловушек предварительной фиксации в SVN. Однако когда я пытался использовать команду svnlook cat с опцией -t, она не работала. Он продолжал говорить мне об ошибках синтаксиса. Я попробовал все, включая добавление кавычек, изменение параметра -t и т. Д. Однако, если я удалю параметр -t, он не сообщит о синтаксических ошибках. Итак, это ошибка скриптов:
SET REPOS=%~1 (I want to remove the quotes of the path)
SET TXN=%2
"C:\Program Files (x86)\VisualSVN Server\bin\svnlook.exe" cat -t %TXN% %REPOS% myworkingdir/txtIwanttoread
Если я сделаю следующее, они все в порядке:
SET REPOS=%~1 (I want to remove the quotes of the path)
SET TXN=%2
"C:\Program Files (x86)\VisualSVN Server\bin\svnlook.exe" cat %REPOS% myworkingdir/txtIwanttoread
ИЛИ ЖЕ
SET REPOS=%~1 (I want to remove the quotes of the path)
SET TXN=%2
"C:\Program Files (x86)\VisualSVN Server\bin\svnlook.exe" cat -r 28 %REPOS% myworkingdir/txtIwanttoread
Кто-нибудь, пожалуйста, помогите мне! Спасибо!
Не берите в голову всех, я думаю, что я только понял это сам. Мы должны использовать SET TXN=%~2, чтобы исключить кавычки. Кроме того, даже если бы я сделал это, глупый пакет помещает пробел в конце переменной TXN. Это то, что вызывает проблему. Так что скрипт должен выглядеть так:
SET REPOS=%~1 (I want to remove the quotes of the path)
SET TXN=%~2
SET TXN=%TXN: =% (deblank)
"C:\Program Files (x86)\VisualSVN Server\bin\svnlook.exe" cat -t %TXN% %REPOS% myworkingdir/txtIwanttoread