Софтодром   
10 лучших бесплатных программ >

Windows Программы для Windows
Linux Программы для Linux
Android Приложения для Android
iOS Приложения для iPhone

Новости  Форумы

Monad, новая командная строка MSH



Новости    Новости Windows


Автор: TheVista.ru
Дата:

Данная статья является первой в цикле обзоров новой командной строки Windows, Monad, так же известной как MSH Command shell.

Monad - процессор команд следующего поколения для ОС Windows. Построенный на базе .NET Framework, MSH является сильным средством для автоматизации различных задач администрирования системы.

Было бы нечестно рассматривать MSH как простое продолжение старого процессора команд (cmd.exe), корни которого уходят еще в MS-DOS. Действительно, хотя MSH это по сути та же "консоль", у нее есть серьезные дополнительные возможности, например возможность работы в контексте MMC (Microsoft Management Console). При разработке MSH были учтены последние разработки в области структуризации данных и администрирования ОС.

Pipeline (трубопровод - прим. перев.) - механизм передачи данных между различными модулями системы, уже давно стал частью многих командных строк. Создатели MSH пошли дальше, модифицировав Pipeline для передачи данных не в виде текстовых файлов, как было раньше, а в виде структурированных .NET-объектов.

Воспроизводимость и последовательность - две основные характеристики MSH. Управление отдельной машиной сегодня - задача отнюдь не трудная; Windows предлагает хорошо организованный графический интерфейс параметров настройки и конфигурации, а Terminal Services упрощает задачу настройки сервера, расположенного на другом краю света. К сожалению, не все так безоблачно - администрирование двух машин занимает уже вдвое больше времени, чем одной, а десяти - в десять.

К счастью, существуют такие службы, как SMS (System Management Server - прим. перев.), облегчающие работу в рамках предприятия и WSH (Windows Scripting Host), служащий для автоматизации часто используемых задач.

Monad не является полноценным языком программирования, как например C# и C++, но содержит в себе достаточно мощные инструменты для написания скриптов.

MSH поддерживается целым тремя из ныне существующих ОС:
Windows XP SP2
Windows Server 2003
Windows Vista (бывший Code Name Longhorn)

Для работы Monad так же необходимо установить .NET Framework 2.0 redistributable, SDK или Visual Studio 2205.
Скачиваем Monad.
Все, что может понадобится для установки Monad, можно найти в сети Интернет. Следуя ниже изложенной инструкции, вы легко отыщите все необходимые компоненты.1. Скачайте и установите .NET Framework 2.0 с msdn.microsoft.com/netframework/downloads/updates/
2. В нашем архиве утилит, вы всегда найдете последнюю версию Monad.
3. Все!

Итак, начнем работу.

Синтаксис Verb-Noun (Глагол-Существительное - прим. перев.) и CMDlets.
Как мне это сделать?
Большинство команд в MSH представляют из себя пару "глагол-существительное", разделенную дефисом. Глагол описывает действие (напр. get или set), а существительное - его цель (process или location). Стандартный набор глаголов покрывает большинство задач (get, set, add, remove).
Нет ничего ценнее опыта. "Лучший способ научится - это начать пользоваться". Эта народная мудрость полностью применима к процессу освоения MSH. Начните с простых задач - посмотреть текущий список заданий или папок, а потом переходите в экспериментам. Не стоит, правда, забывать о том, что некоторые CMDLets могут нанести вред при неверном применении. Например, если дать команду на удаление всех ваших файлов, MSH их удалит. Специально для новичков в MSH есть параметр - WhatIf, который переводит строку в режим, когда она только говорит вам что бы было сделано при вводе соотв. команды, но ничего не делает.

Начнем с запуска. Из меню Пуск выберите Run (Выполнить) и наберите MSH. Откроется окно консоли с приветствием:

Код:
Microsoft Command Shell
Copyright (C) 2005 Microsoft Corporation. All rights reserved.
MSH D:MshScripts>


Первая команда.
Построим список активных процессов.

Код:
MSH D:MshScripts> get-process

Handles NPM(K) PM(K) WS(K) VS(M) CPU(s) Id ProcessName
------- ------ ----- ----- ----- ------ -- -----------
119 6 996 3336 31 0.22 1844 alg
602 12 10408 15816 64 18.96 1656 CcmExec
409 5 1648 3364 22 16.23 464 csrss
273 11 7376 12696 55 340.16 212 explorer
0 0 0 16 0 0 Idle
146 11 3532 7284 61 2.90 1264 InoRpc
110 5 11136 12404 60 9.33 1316 InoRT
107 5 2820 6244 53 4.22 1332 InoTask
405 10 4404 528 41 11.66 544 lsass
290 12 33948 32208 175 14.90 3088 msh



Заметим так же, что команда get-process может работать с параметром -Exclude, который настраивает фильтр процессов.
Попробуем найти все процессы, имя которых начинается на букву w, за исключением тех, первыми тремя буквами в именах которых являются win.

Код:
Handles NPM(K) PM(K) WS(K) VS(M) CPU(s) Id ProcessName
------- ------ ----- ----- ----- ------ -- -----------
125 4 1300 3624 23 0.82 320 wmiprvse
137 4 3388 4156 25 1.36 1920 wmiprvse


Что такое cmd-апплеты (CMDLets).
CMDLets (произносится как "command-lets") это одна из основ функциональности MSH. Они могут быть как очень простыми, так и очень сложными, но все они служат одной цели - эффективному исполнению поставленной задачи. CMDLets - это как-бы мини-программы внутри MSH, каждая из которых отвечает за определенную функцию командной строки.

Как я могу узнать больше?

CMDLet get-help - это портал в мир обновленной системы помощи Monad. Если вы введете просто имя CMDLet, откроется страница синтаксиса.

M
Код:
SH D:MshScripts> get-help get-process
NAME
get-process
SYNOPSIS
Gets a list of processes on a machine.
DETAILED DESCRIPTION
The get-process Cmdlet gets a list of the process running on a machine
and displays it to the console along with the process properties.
This command also supports the ubiquitous parameters:
-Debug (-db), -ErrorAction (-ea), -ErrorVariable (-ev)
-OutBuffer (-ob), -OutVariable (-ov), and -Verbose (-vb)
SYNTAX
get-process [-ProcessName] [processName] [-Id processId]


Вызов get-help без параметров вызовет содержание справки. Конкретную информацию о команде можно получить, введя название раздела справки или CMDLet после get-help.


Часть вторая

Так как наш обзор - это, с позволения сказать, лишь краткая экскурсия в обширный мир новых возможностей Monad, рассмотрим следующее глобальное изменение. Безусловно, это способность MSH работать с произвольными данными как с файловыми системами. Это реально благодаря provider model.

Доступ к реестру как к файловой системе.

Исторически так сложилось, что командные строки были жестко привязаны к файловой системе. Четкая иерархическая структура команд обеспечивала передвижение вниз, вверх и внутри уровней такой системы. Годы показали, что такой способ представления данных эффективен, даже не смотря на проблемы, которые он создает - например, сложность манипулирования данными, разбросанными по различным локациям внутри системы.

Конечно, не всегда было возможным рассматривать файловые системы как организованное дерево информации, хотя сегодня это и кажется абсолютно естественным. Но с наличием пережитков того времени - обилия различных стандартов хранения файлов (FAT, NTFS, CIFS, ISO9660) - помогают справиться современные операционные системы, которые берут всю черную работу на себя, оставляя конечному пользователю только легкость работы с организованной иерархией папок. MSH делает еще один шаг вперед - теперь в виде иерархического дерева будет так же представлен реестр и некоторые другие системы хранения данных ОС. Это должно существенно облегчить многие из ежедневных задач.

В MSH, служба provider формирует виртуальный слой информации, который виден в оболочке в качестве отдельного диска. Теперь, в дополнение к привычным A, C и D вы так же можете видеть диски переменных сред, настроек MSH, ярлыков всевозможных программ и частей реестра.

Давайте посмотрим на настройку программы через реестр на примере всеми любимого блокнота.

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

Только представьте: теперь реально написать скрипт, который будет сканировать, находить и изменять по заданной маске не только файлы, но и, например, записи реестра, и для этого не понадобится вносить почти никаких изменений!

Ну и как мне сделать подобное?

Реестр разделен на 5 основных секций, известных как "ульи". Мы рассмотрим два из них, HKEY_LOCAL_MACHINE (часто название сокращается до HKLM), в котором хранятся системные настройки, единые для всех пользователей, и HKEY_CURRENT_USER (HKCU), в котором живут настройки конкретного пользователя.

При запуске, MSH создает два дополнительных виртуальных диска (hkcu: и hklm:), которые обозначают соотв. локации в реестре. Вы можете сразу начать их просматривать:

Код:
MSH D:MshScripts> cd hkcu:
MSH D:MshScripts> dir

SKC VC ChildName Property


--- -- --------- --------

2 0 AppEvents {}

0 31 Console {ColorTable00, ColorTable01,

ColorTab...

23 1 Control Panel {Opened}

0 3 Environment {MSHCOMMANDPATH, TEMP, TMP}

1 6 Identities {Identity Ordinal, Migrated5, Last

Us...

2 0 Keyboard Layout {}

0 0 Network {}

1 0 Printers {}

5 0 Software {}

0 0 UNICODE Program Groups {}

0 1 SessionInformation {ProgramCount}

0 7 Volatile Environment {LOGONSERVER, CLIENTNAME, SESSIONNAME...


Нетрудно увидеть связь между этими данными и иерархией данных в программе regedit.exe (см. рисунок 1-1).


Рисунок 1-1. Regedit.exe

Блокнот хранит индивидуальные настройки пользователя в HKCU, в разделе SoftwareMicrosoft. Попробуем использовать cmdlet (см. первую статью цикла) get-property чтобы просмотреть содержимое раздела.

Код:
MSH D:MshScripts> cd hkcu:SoftwareMicrosoftNotepad

MSH D:MshScripts> get-property .

lfEscapement : 0

lfOrientation : 0

lfWeight : 400

lfItalic : 0

lfUnderline : 0

lfStrikeOut : 0

lfCharSet : 0

lfOutPrecision : 1

lfClipPrecision : 2

lfQuality : 2

lfPitchAndFamily : 49

iPointSize : 100

fWrap : 0

StatusBar : 0

fSaveWindowPositions : 0

lfFaceName : Lucida Console

szHeader : &f

szTrailer : Page &p

iMarginTop : 1000

iMarginBottom : 1000

iMarginLeft : 750

iMarginRight : 750

fMLE_is_broken : 0

iWindowPosX : 88

iWindowPosY : 88

iWindowPosDX : 600

iWindowPosDY : 411


Вернемся в regedit.exe и отметим, что полученный нами результат полностью идентичен по содержанию тому, что дает эта программа. Блокнот использует ключ IfFaceName для хранения используемого шрифта. Воспользуемся cmdlet set-property чтобы поменять это значение на Verdana:
Код:
MSH D:MshScripts> set-property . -property lfFaceName -value "Verdana"


Теперь при запуске Блокнот будет отображать текст именно этим шрифтом (см. рисунок 1-2).


Рисунок 1-2.

А как насчет...
...Использования такого подхода для настройки других приложений? Это зависит от того, в какой форме программа хранит настройки - XML-файл, INI-файл, реестр или иными способами.

На этом месте логичными будут вопросы "Но ведь есть же и другие средства для этого?" и "А как насчет Group Policy и SMS?". Действительно, платформа Windows предоставляет множество инструментов для управления приложениями, и MSH отнюдь не является их заменой, наоборот, новая командная строка как бы готовит плацдарм для более глубокой настройки индивидуальных программ, позволяя в короткие сроки исследовать систему. Group Policy и SMS незаменимы для выполнения автоматизированных задач в крупных сетях, тогда как MSH - средство повседневного администрирования.

Где я могу узнать больше?

Реестр Windows подробным образом описан на http://support.microsoft.com/default.aspx?scid=kb;EN-US;256986.

В следующей статье мы расскажем о создании "трубопровода" (pipeline) для передачи данных.

Источник: http://www.computerworld.com/
Перевод: swissglide

Ссылка по теме: Скачать Windows Monad Shell



Топ-10 лучших бесплатных программ

ТОП-10 Аудио, видео

K-Lite Codec Pack Full - скачать

7/8/10/11
Разработчик: K-Lite
Загрузок: 5940206

Бесплатная

K-Lite Codec Pack Full — набор кодеков и инструментов для проигрывания аудио и видео практически любых форматов


ТОП-10 Система

CCleaner - скачать

7/8/10
Разработчик: Piriform Ltd
Загрузок: 2903627

Бесплатная

CCleaner — бесплатная программа для очистки системы: удаления истории просмотра сайтов в браузерах, временных файлов, а также для безвозвратного удаления данных


ТОП-10 Загрузка файлов

uTorrent - скачать

7/8/10/11
Разработчик: BitTorrent
Загрузок: 2462735

Бесплатная

uTorrent — компактный BitTorrent-клиент с поддержкой одновременной загрузки сразу нескольких файлов, настраиваемой полосой пропускания, небольшим использованием памяти и т.д.


ТОП-10 Мультимедиа

DAEMON Tools Lite - скачать

7/8/10/11
Разработчик: Daemon-tools
Загрузок: 1503472

Бесплатная

DAEMON Tools Lite — эмулятор CD/DVD-приводов, относительно маленький по размеру, но мощный по возможностям


ТОП-10 Графика и дизайн

Foxit Reader - скачать

7/8/10
Разработчик: Foxit Software
Загрузок: 1238429

Бесплатная

Foxit Reader — быстро работающее приложение для просмотра и печати документов формата PDF, не требующее наличия Adobe Reader


ТОП-10 Загрузка файлов

BitTorrent - скачать

7/8/10
Разработчик: BitTorrent
Загрузок: 516473

Бесплатная

BitTorrent — официальный клиент пиринговой сети, нацеленной на возможность загрузки файлов большого размера


ТОП-10 VPN

SoftEther VPN Client - скачать

7/8/10/11
Разработчик: SoftEther
Загрузок: 141887

Бесплатная

Бесплатный VPN-клиент. Поддерживаются OpenVPN, IPsec, L2TP, MS-SSTP, L2TPv3 и EtherIP, а также собственный протокол


ТОП-10 Аудио, видео

KMPlayer - скачать

7/8/10/11
Разработчик: KMP Media Corp.
Загрузок: 3165522

Бесплатная

KMPlayer — медиаплеер с поддержкой проигрывания всех популярных видеоформатов и гибкой настройкой параметров просмотра видео


ТОП-10 Загрузка файлов

I2P - скачать

7/8/10/11
Разработчик: i2p2
Загрузок: 20616

Бесплатная

Cвободный анонимный клиент файлообменной сети, который использует анонимные соединения с помощью сети I2P (Проект Невидимый Интернет)


ТОП-10 Загрузка файлов

qBittorrent - скачать

7/8/10
Разработчик: Gbittorrent Team
Загрузок: 28992

Бесплатная

Приложение файлообменной сети BitTorrent со встроенным поисковым движком, поддержкой Unicode, Drag'n'Drop, возможностью скачивать только указанные файлы, а не весь торрент, работой через прокси и т.д.



Топ-10 лучших бесплатных VPN приложений


SoftEther VPN Client - скачать

7/8/10/11
Разработчик: SoftEther
Загрузок: 141887

Бесплатная

Бесплатный VPN-клиент. Поддерживаются OpenVPN, IPsec, L2TP, MS-SSTP, L2TPv3 и EtherIP, а также собственный протокол



Speedify VPN - скачать

7/8/10/11
Разработчик: Connectify Inc.
Загрузок: 1442

Бесплатная

Приложение VPN-сервиса Speedify. Одна из особенностей — возможность увеличить скорость защищенного соединения за счет одновременного использования любой комбинации интернет-соединений



OpenVPN - скачать

7/8/10/11
Разработчик: OpenVPN Technologies
Загрузок: 56862

Бесплатная

Решение с открытым исходным кодом для организации виртуальных частных сетей (VPN)



Hotspot Shield Free/Elite - скачать

7/8/10/11
Разработчик: Ariane Resnick
Загрузок: 46018

Бесплатная

Приложение для VPN. Обеспечивает конфиденциальность и безопасность при подключении к Wi-Fi точкам доступа



Avira Phantom VPN - скачать

7/8/10
Разработчик: Avira
Загрузок: 5197

Бесплатная

Приложение для обеспечения безопасности соединения, анонимности деятельности и предоставления доступа к любым веб-сайтам из любой точки мира



Windscribe VPN - скачать

7/8/10/Linux/iOS/Android/11
Разработчик: Windscribe
Загрузок: 3892

Бесплатная

Приложение VPN-сервиса Windscribe, предоставляющего безопасное и анонимное подключение к Интернету. Поддерживаются Windows, Linux, iOS и Android



Browsec VPN - скачать

7/8/10
Разработчик: Browsec
Загрузок: 2378

Бесплатная

Бесплатный VPN-клиент в виде расширения для браузеров Chrome, Firefox, Opera, Edge. Зашифровывает весь трафик, скрывает IP-адрес и позволяет иметь доступ к заблокированному контенту



Psiphon - скачать

7/8/10/11
Разработчик: Psiphon Inc
Загрузок: 5464

Бесплатная

Приложение VPN-сервиса Psiphon, позволяющего обезопасить себя при работе в публичных сетях Wi-Fi. Кроме этого, Psiphon облегчает доступ к сайтам и сервисам, которые подвергаются цензуре, блокировке или иным образом недоступны



Ultrasurf VPN - скачать

7/8/10
Разработчик: Ultrareach
Загрузок: 1552

Бесплатная

VPN-клиент без необходимости установки, без регистрации, без входа в систему, без ведения журнала и без ограничений пропускной способности



Radmin VPN - скачать

7/8/10/11
Разработчик: Famatech
Загрузок: 5475

Бесплатная

Бесплатная программа для создания виртуальных частных сетей (VPN)



09.01.2023 11:07

Microsoft прекращает поддержку Windows 8.1

Компания Microsoft предупредила пользователей о завершении поддержки операционной системы Windows 8.1


01.07.2022 12:05

Минэкономразвития заменит Windows 10 на Astra Linux

Мероприятия по импортозамещению иностранного программного обеспечения проводятся в том числе с целью минимизировать последствия недружественных действий иностранных государств


21.05.2022 23:56

Конец Windows: президенту Microsoft запретили въезд в Россию

Как отмечается в сообщении МИД РФ, эти меры приняты «в контексте ответных мер на постоянно вводимые США антироссийские санкции»


23.06.2020 18:39

Windows 7 внезапно получила обновление

Microsoft выпустила обновление для операционных систем Windows 7 и 8.1, устанавливающее новый браузер Edge на движке Chromium


27.02.2020 22:12

Microsoft запустила «горячую линию» об окончании поддержки Windows 7

По просьбам пользователей компания Microsoft открыла «горячую линию» для ответа на вопросы по поводу окончания поддержки Windows 7


Популярное: Новости Windows
21.05.2022 23:56

Конец Windows: президенту Microsoft запретили въезд в Россию

Как отмечается в сообщении МИД РФ, эти меры приняты «в контексте ответных мер на постоянно вводимые США антироссийские санкции»


28.04.2007 00:53

Microsoft признает провал Windows Vista

Microsoft признала то, о чем многие все время твердили - Windows Vista, так же известная как Windows Millennium 2, это всего лишь прикол, которого на самом деле никто не хочет


16.04.2007 02:28

Конфигурируем Windows XP под двухядерные системы

По-видимому, Windows XP2 автоматически не распознает, на каком процессоре - двухядерном или нет - она устанавливается, так что настройка должна быть сделана вручную


22.10.2007 20:28

Microsoft показала ядро Windows 7

Microsoft разработала минимизированную версию ядра для своей будущей операционной системы, известной под кодовым названием Windows 7


22.10.2017 23:11

Что делать пользователям Windows 7 после прекращения поддержки?

Если к этому времени большинство пользователей по-прежнему будут использовать Windows 7, то они останутся с устаревшей операционной системой, для которой больше не будут выпускаться никакие обновления, в том числе связанные с безопасностью



Ищете, где скачать бесплатные программы?

Скачать бесплатные программы для компьютера на Windows и смартфона на iOS или Android можно на Софтодроме. На данный момент в каталоге Софтодрома представлено более 13 000 бесплатных программ для Windows, iOS, Android и Linux.
Все рубрики статей (5100 / 62):


Программы для Windows | Приложения для Android | Приложения для iPhone | Программы для Linux
Статистика | Рейтинги | Авторам | Рассылки
Copyright © 1999-2023 Softodrom.ru
Реклама | О проекте | О перепечатках | Пользовательское соглашение | Политика конфиденциальности | Карта сайта
Яндекс.Метрика