У меня есть пакетный скрипт, который проверяет, существует ли каталог, а затем отображает его, если он существует.Обратная косая черта в пути к каталогу, в чем разница?
if exist \\server\folder1\%username% net use g: \\server\folder1\%username%
В последнее время сценарий не был правильно отображение с некоторыми компьютерами, на этих компьютерах в потребности быть изменение
if exist \\server\folder1\%username%\ net use g: \\server\folder1\%username%
Почему бы, что обратная косая разница? Разве это не указывает на тот же каталог? Почему «если есть» это нужно, а «сетевое использование» не нуждается в этом? Пользователи НЕ имеют доступ к папке1.
Теперь, я наткнулся на старую версию того же файла, написанного предыдущим сотрудником, и он написал это как
net use g: \\\\server\folder1\%USERNAME%
Почему бы он поставил четыре косую черту?
для вашего первого вопроса, возможно, есть пробел в имени пользователя? –
Я вижу то же поведение WRT 'IF EXIST' с обратной косой чертой и без нее. Я не думаю, что это проблема. Как правило, я всегда заключу пути в кавычки для учета возможности их размещения пробелов или других специальных символов (надеюсь, двойные кавычки не разрешены в именах пользователей). Для последнего вопроса единственная причина, по которой кто-то хотел бы использовать четыре обратных слэша, - это то, что значение было в строке, которая должна была быть интерполирована. Это не работает вообще в пакетной/CMD. Скорее всего, путь, скопированный из скрипта Perl (или чего-то подобного), например '' \\\\ server \ share \ dir1'' – mojo