Здравствуйте, Sheridan, Вы писали:
S>Ты это, вывод то тоже показывай чтобы было понятно что надо
Ок, но это ничего не даст. Текст, который выводится в результате работы скриптов PS — является лишь одним из способов визуального представления возвращаемых командами объектов.
Здравствуйте, Sheridan, Вы писали:
>> Давай проще — включим extended desktop (для двух мониторной конфигурации). видео... пусть будет простенький intel S>Присылай железо, у меня такого нету
А без железа совсем никак?
Там всего то надо подфиксить [q]# There is a known issue that DRI doesn't work on pre-965 if maximum is larger than 2048x2048.[q/] http://intellinuxgraphics.org/dualhead.html
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
Здравствуйте, Roman Odaisky, Вы писали:
RO>Это, собственно, вопрос кому?
Это риторический вопрос
RO>Если я правильно понял, что имеется в виду под extended desktop, то в X11 с RandR 1.2 это выглядит как-то так: RO>xrandr --output name1 --auto --output name2 --auto --right-of name1
В свете максимального разрешения в 2048x2048 это мало актуально...
RO>Можно располагать дисплеи как угодно, даже пересекать:
Ну да, дисплеи можно распологать как угодно только, не друг за другом
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
Здравствуйте, Sheridan, Вы писали:
S>kochetkov.vladimir однажды (25 июня 2008 19:34) писал в rsdn.flame.comp:
S>Монитор выключить сможеш? S>
S>xset -display :0 dpms force off
S>
Честно говоря, не представляю себе — нахрена это может понадобиться, но — почему нет?
Через WMI (как посоветовал Роман), к сожалению — именно монитор отключить не получится, бо MS до сих пор не реализовала провайдера для метода SetPowerState класса Win32_DesktopMonitor. Но это косяк WMI, а PS. Если реализует, либо если взять провайдера третьих контор, либо если написать своего, то на PS через WMI это выглядело бы так:
Но увы и ах — провайдера в общем случае нет. Поэтому пойдем вторым путем, предложенным Романом и воспользуемся WinAPI. Чуть расширим задачу: вызвать произвольную функцию из произвольной DLL, не против?
Потратим немного времени на написание универсального "запускателя" нативных функций из dll'ек:
Его можно оформить в виде отдельного сценария (либо в виде командлета в PS v2.0) для дальнейшего использования из любых скриптов. Затем: напишем обертку для SendMessage:
Писать пришлось много, таки-да. Зато у нас теперь в распоряжении — полноценный доступ не только к API всей системы, но и всех доступных для использования dll-библиотек из обычных скриптов, не дотягивающих до уровня bash
Здравствуйте, Sheridan, Вы писали:
S>Roman Odaisky однажды (25 июня 2008 21:27) писал в rsdn.flame.comp:
>> Это немножко не то, ему не надо было сравнивать содержимое. S>Просто список файлов сравнить? Тогда find+diff
Здравствуйте, TK, Вы писали:
TK>Здравствуйте, kochetkov.vladimir, Вы писали:
KV>>Задача: найти различия в каталогах с вложенными подкаталогами и файлами внутри. некоторые файлы могут совпадать по имени но отличаться по размеру.
TK>Это и в фаре можно сделать. тут какбы 2008й год на дворе... TK>Можно сделать задачку более реалистичной. например, обновление фотоархива. есть фотоаппарат (допустим какой-нибудь cannon ixus — как storage не монтируется) надо сравнить его содержимое с содержимым медиа сервера который, доступен в сети через UPnP.
У меня складывается ощущение, что ты про этот кэннон вспоминаешь едва ли не чаще, чем Шеридан про свою генту
TK>можно посмотреть как это замечательно делается на PS?
Пока не знаю. Каким образом система общается с аппаратом и что из себя представляет "медиа-сервер" (имена/протоколы, явки, пароли)?
Здравствуйте, Roman Odaisky, Вы писали:
RO>Задача: отслеживать изменения в файловой системе. К примеру, всякий раз, как в некоей директории появляется файл, оповещать об этом пользователя.
RO>bash: RO>
RO>while file="$(inotifywait -q -e create --format='%w/%f' /var/crash)"
RO>do
RO> kdialog --msgbox "Something crashed and file $file was created."
RO>done
RO>
Ок, только договорись с Шериданом — каким из четных раундов это будет. А сейчас — моя очередь
Твой пример тоже любопытен. Майкрософт, очевидно, рассматривает PowerShell просто как еще один .NET-язык с непривычным синтаксисом? Ждем скриптов на PowerShell в ASP.NET :-)
kochetkov.vladimir однажды (26 июня 2008 [Четверг] 14:25) писал в rsdn.flame.comp:
> Честно говоря, не представляю себе — нахрена это может понадобиться, но — почему нет?
Ну у меня это вполне себе работает...
Вобщем скрипт пинает по bluetooth 2 мобилы, и ежели ни одна не отвечает, то отключает монитор, лочит станцию, гасит звук, плеер на паузу ставит, в мессенжерах статусы выставляет, пару сервисов стартует....
При обнаружении телефона соответственно все наоборот: анлок станции, включает монитор и так далее.
Подробнее, ежели кому интересно, — тут
Roman Odaisky однажды (26 июня 2008 [Четверг] 15:22) писал в rsdn.flame.comp:
> Или если у Шеридана фантазия кончится.
Шеридан и фантазия — братья вовек, так что пусть администрация РСДН новый форум готовит под этот холивар
Здравствуйте, kochetkov.vladimir, Вы писали:
KV>У меня складывается ощущение, что ты про этот кэннон вспоминаешь едва ли не чаще, чем Шеридан про свою генту
Первый раз вспомнил. Я обычно вспоминаю то, что видео драйверов под linux нормальных либо нет либо
KV>Пока не знаю. Каким образом система общается с аппаратом
Например, через Picture Transfer Protocol (PTP)
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
Здравствуйте, Roman Odaisky, Вы писали:
RO>Задача: отслеживать изменения в файловой системе. К примеру, всякий раз, как в некоей директории появляется файл, оповещать об этом пользователя.
RO>bash: RO>
RO>while file="$(inotifywait -q -e create --format='%w/%f' /var/crash)"
RO>do
RO> kdialog --msgbox "Something crashed and file $file was created."
RO>done
RO>
ок:
$fsw = New-Object System.IO.FileSystemWatcher("C:\\Temp")
while ($file = $fsw.WaitForChanged("Created").Name)
{
echo "Something temporary occured and file $file created."
}