Mapped Drive недоступен из запланированной задачи Windows

Я работаю с python 2.7.9 (64 бит) и сервером Windows 2012 R2

Я пытаюсь настроить задачу по планированию Windows, чтобы каждый день запускать длинный скрипт python. Мне удалось вызвать python из сценария powershell, чтобы запустить python, но при этом возникает проблема, когда он пытается получить доступ к подключенному диску.

Я могу получить доступ к файлу из командной строки или интерактивной powershell, и он работает, если я вызываю скрипт powershell напрямую, но когда я запускаю запланированную задачу, я получаю сообщение об ошибке:

bsd_runner.py:<module>:[Errno 2] No such file or directory: u'S:\\pre/RefAttendanceReason.csv' 

Несмотря на то, что задача настроена на запуск в качестве моего пользователя, я подумал, что, возможно, задача расписания не отображает диск, поэтому я искал отображение диска внутри моего сценария powershell. Я пытался:

 New-PSDrive –Name "S" –PSProvider FileSystem –Root "\\D-DWSQL01\Share\load" –Persist 2>&1 >> map_drive.log 

Которые дали мне результаты:

 New-PSDrive : The specified drive root "â€Root \\D-DWSQL01\Share\load â€Persist" either does not exist, or it is not a folder. At C:\Users\thomasa\Desktop\sandbox\BSD_ETL\run_bsd.ps1:8 char:5 + New-PSDrive –Name "S" –PSProvider FileSystem –Root "\\D-DWSQL01\Share\ ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~ + CategoryInfo : ReadError: (â€Name S â€PSProvider:PSDriveInfo) [ New-PSDrive], IOException + FullyQualifiedErrorId : DriveRootError,Microsoft.PowerShell.Commands.New PSDriveCommand 

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

Я проверил наивысшие разрешения и сказал задание, чтобы убедиться, что он имел доступ к сети перед запуском, но безрезультатно.

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

С помощью

 net use S: \\D-DWSQL01\Share\load 

По-видимому, разрешено задание расписания нормально видеть диск.

Перед подключением PSdrive добавьте строку:

 pushd \\D-DWSQL01\Share\load 

Перед отключением с помощью PSdrive добавьте строку:

 popd 

Команды PSdrive могут быть удалены, если вам не нужна карточка специального диска.

Interesting Posts

Как предотвратить соединение Bluetooth bluetooth Bluetooth от смерти сразу после .connect ()?

Элементы управления javafx listview и treeview не перекрашены правильно

Разница между $ (this) и event.target?

как иметь отношения многие ко многим в redis

отладочная информация не может быть найдена или не соответствует визуальной студии

Значок панели задач Windows 7 выделяет палочки

Как выполнить декодирование URL в Java?

Неужели SSD действительно последние 285 лет?

Как можно изменить настройки отображения nvidia?

Экземпляр нового типа (Голанг)

Странная ошибка в рельсах – отсутствует помощник

Как Intel HD Graphics от процессоров 2010 года сравнивается с текущими низкоуровневыми видеокартами?

Android Gallery на Android 4.4 (KitKat) возвращает другой URI для Intent.ACTION_GET_CONTENT

Как быстро переместить текущее окно на другой вид задачи / рабочего стола в Windows 10?

Материнская плата Asus P7P55D-E LX – более 16 ГБ оперативной памяти?

Давайте будем гением компьютера.