Schtasks является Вашим другом для этого - В, старо и не делает (SFAIK), постигают задачи, создает с schtasks. К сожалению, объект Win32_ScheduledTask WMI на основе В, иначе это идеально подошло бы для этого.
К сожалению, ни В, ни schtasks сообщают относительно пользователя что прогоны задания как. Существует, вероятно, COM-объект где-нибудь, который позволяет Вам достигнуть это; возможно, Вы могли спросить относительно stackoverflow?
Если бы Вы хотите написать сценарий его, Вы, вероятно, сделали бы что-то вроде этого:
$servers = 'server1','server2','server3'
$allTasks = @()
$servers | %{
$data = schtasks /query /S $_ /fo list
# Data looks like this:
# <blank line>
# HostName: [SERVER]
# TaskName: [TASK NAME]
# Next Run Time: 12:00:00 PM, 5/9/2009
# Status: [BLANK or SOME ERROR]
foreach ($line in $data){
$blob=""|select Host, Task, Next, Status
[void]$foreach.MoveNext(); $l = $foreach.Current.length;
$blob.Host = $foreach.current.substring(15, $l-15)
[void]$foreach.MoveNext(); $l = $foreach.Current.length;
$blob.Task = $foreach.current.substring(15, $l-15)
[void]$foreach.MoveNext(); $l = $foreach.Current.length;
$blob.Next = $foreach.current.substring(15, $l-15)
[void]$foreach.MoveNext(); $l = $foreach.Current.length;
$blob.Status = $foreach.current.substring(15, $l-15)
$allTasks += $blob
}
}
$allTasks|format-table
Это стало злым эссе кода - было бы легче использовать/FO csv опция вывести к текстовому файлу импорт-csv использования для возвращения данных в PS, но тот путь Вы теряете имя сервера. Так вместо этого Вы добираетесь, чтобы представить немного и сделать создание пользовательского объекта и бездельничающий с foreach перечислителем. Вызов MoveNext перемещает Вас в следующий объект в списке, таким образом, Вы пропускаете первую пустую строку вывода и затем проводите каждую из следующих 4 строк и превращаете их во что-то полезное.
Я не знаю gvfs, или поддерживает ли он прокси или нет. Но простой способ "вызвать" прокси состоит в том, чтобы установить Charles как обратный прокси и позволить Вашему webdav клиенту соединиться с прокси вместо этого.
Например, предположите, что Charles работает на хосте "прокси", и webdav в хосте "webdav". Установите Charles, чтобы сделать обратный прокси на порте 80, и передавать трафик к webdav:80 ("обратный прокси" доступно в меню). Затем вместо того, чтобы подключить Ваши клиенты к "webdav", позвольте им соединиться с http://proxy/ вместо этого.
Существует немного протестов при выполнении обратного прокси с WebDAV. Необходимо переписать не только Хост: заголовок (который Charles делает для Вас), но также и Место назначения: и Если: заголовки. Место назначения: используется при копировании или движущиеся файлы, в то время как Если: используется, чтобы проверить, что файл все еще заблокирован. К счастью, поддержки Charles, переписывая любой заголовок... ищут Инструменты>, Переписывают, можно поместить там довольно общие правила для перезаписи. То, что необходимо сделать, переписывают часть хоста абсолютных URL в тех заголовках от "прокси" до "webdav". (Простой s/proxy/webdav/будет работать на тестирование) существует большая сводка Julian Reschke о webdav и обратных проблемах прокси, если Вам интересно ;-)
(Если можно сделать прокси использования gvfs отдельно, затем можно избежать проблем с перезаписью заголовка..., но я не смог сделать WebdavFS на Mac для использования прокси, таким образом, это было полезно для меня).