Я должен переключить свой подключенный диск, потому что я работаю на двух серверах и не хочу менять пути, хранящиеся в файлах, которые я изменяю.

Обычно оба местоположения отображаются как P: в моей компании.
Мне просто интересно, как сделать что-то подобное. Могу ли я получить вашу помощь?

У меня есть два чистых использования:

NET USE P: /d
NET USE L: \\PLKRKXXXX.XXX.XX\Assignment
NET USE P: \\SEXXXXX\Projekt\

Я запускаю скрипт для сопоставления как буква P:

  1. если нет подключенного диска с P: скрипт, пусть он скажет первый

    NET USE P: \\PLKRKXXXX.XXX.XX\Assignment
    
  2. если диск уже подключен как P: сценарий устанавливает фактическое использование сети в виде буквы L: а второй - как P: и когда я снова запускаю этот сценарий, он меняет расположение для сопоставленных дисков L и P, так как он просто переключает их.

Сейчас я использую два простых пакетных сценария, которые выглядят как выше, но я знаю, что можно использовать некоторые условия, чтобы сделать его лучше.

Для меня не важно, будет ли это скрипт bat или vbs или что-то еще, что я хочу сделать, запустив один значок.

РЕДАКТИРОВАТЬ: Я попробовал ваши варианты и, возможно, я не был достаточно ясен. Оба местоположения (серверы) доступны каждый раз, но я должен переключаться между ними. Когда-то я работал на своем локальном сервере и один раз на стороннем сервере. Но оба сопоставлены как P: (для каждого пользователя), поэтому мне нужно переключиться (зависит от того, над каким проектом я сейчас работаю). Я могу взять на себя приоритет, как вы предлагаете (но не имеет большого значения, смогу ли я переключить его снова запустить скрипт). В любом случае, спасибо за ваши усилия.

Я запускаю скрипт, а затем:

Случай 1а: у меня есть подключенные диски, как показано ниже

P: \\SEXXXXX\Projekt\ and L: \\PLKRKXXXX.XXX.XX\Assignment

когда скрипт выполнен - просто переключите их на:

L: \\SEXXXXX\Projekt\ and P: \\PLKRKXXXX.XXX.XX\Assignment

случай 1b: (я снова запускаю скрипт), поэтому у меня есть начало:

L: \\SEXXXXX\Projekt\ and P: \\PLKRKXXXX.XXX.XX\Assignment

после того, как я запустите его снова, он вернется, чтобы начать

P: \\SEXXXXX\Projekt\ and L: \\PLKRKXXXX.XXX.XX\Assignment

случай 2: (у меня нет сопоставленного диска P:), затем скрипт выполняет сопоставление

P: \\PLKRKXXXX.XXX.XX\Assignment

2 ответа2

1

Как насчет этого подхода.

Ясно, что если у вас есть только один доступный сетевой ресурс, вы хотите, чтобы он был отображен как P: Теперь вам нужно определиться с приоритетом. Какой диск вы подключаете к P: когда оба сетевых ресурса доступны? Предположим, вы решили, что \\SEXXXXX\Projekt\ получает приоритет над \\PLKRKXXXX.XXX.XX\Assignment

Тогда просто используйте:

NET USE P: /DELETE
NET USE L: /DELETE
NET USE P: \\SEXXXXX\Projekt\ && NET USE L: \\PLKRKXXXX.XXX.XX\Assignment || NET USE P: \\PLKRKXXXX.XXX.XX\Assignment

Ключевым моментом здесь является использование условного выполнения с && и ||

0

Вы можете использовать exist чтобы проверить, существует ли буква диска:

if exist P: (
    echo Drive P exists 
    NET USE P: /d
    NET USE L: \\PLKRKXXXX.XXX.XX\Assignment
    NET USE P: \\SEXXXXX\Projekt\
) else (
    echo Drive P does not exist
    NET USE P: \\PLKRKXXXX.XXX.XX\Assignment
)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .