2010-07-06 2 views
3

Мы используем Nant для развертывания приложения и должны гарантировать, что общий ресурс создается во время процесса.Nant - Проверьте, существует ли удаленный общий ресурс

Мы используем psexec и net share, чтобы создать общий ресурс, но это не удается и остановит Nant, если эта доля уже существует.

Есть ли способ обнаружить, что доля существует уже?

Либо перед попыткой создать общий ресурс, либо определить код возврата 2 или сообщение The name has already been shared от psexec?

Я пробовал directory::exists, но это всегда возвращает false.

Я попытался скопировать файл в удаленный каталог и file::exists, но это всегда возвращает false.

ответ

3

Похоже, что я делаю что-то не так с моими переменными и путями:

<echo message="exists!" if="${directory::exists('\\${server}\share')}"/> 

не работает, однако:

<property name="test" value="\\${server}\share" /> 
<echo message="exists!" if="${directory::exists(test)}"/> 

работает отлично!

+3

Вы делаете что-то неправильно с переменными. Функция не принимает выражения $ {}, вы просто обращаетесь к свойствам напрямую. Подобно '$ {directory :: exists ('\\' + server + '\ share')}'. –

Смежные вопросы