Jump to content

Recommended Posts

Posted

Even through monad beta release was planned for end of this month (21), it is already avaiable for download at MS beta site!!!

Have you tried it? Do you LOVE it the same way I do? Lets share your opinion...


Posted

Try to go to beta.microsoft.com and log with GuestID mshPDC (case sensitive!)

I was impressed long time ago with alpha, but this beta is simply amazing!

For example accessing WMI classes is awesome!

C:\> $strBiosManufacturer = get-WMIObject Win32_BIOS | get-member Manufacturer
C:\> write-object $strBiosManufacturer.Value
Dell Computer Corporation
C:\> write-object $strBiosManufacturer


   TypeName: System.Management.ManagementObject#root\cimv2\Win32_BIOS

Name         MemberType Definition
----         ---------- ----------
Manufacturer Property   System.String Manufacturer {get;set;}


C:\>

Or another example...

Accessing diferent providers as filesystem. Like registry:

C:\> Set-Location HKLM:\Software
HKLM:\Software> Get-ChildItem


   Hive: Registry::HKEY_LOCAL_MACHINE\Software

SKC  VC Name                           Property
---  -- ----                           --------
 0   2 AdMuncher                      {AppPath, MigrateDone}
 2   0 Adobe                          {}
10   0 Ahead                          {}
 5   0 ATI Technologies               {}
 1   0 ATI Technologies Inc`.         {}
 1   0 Battle`.net                    {}
 1   0 Blizzard Entertainment         {}
 2   0 Broadcom                       {}
 1   1 C07ft5Y                        {(default)}
 9   1 CheckPoint                     {CPTMPDIR}
148   0 Classes                        {}
10   0 Clients                        {}
16   0 ComputerAssociates             {}
 1   0 Crimson System                 {}
 1   0 Dell Computer Corporation      {}
 3   0 DivXNetworks                   {}
 4   0 Ericsson                       {}
 2   0 Extended Systems               {}
 1   0 Gemplus                        {}
 1   0 Ghisler                        {}
 1   1 GIANTCompany                   {DefSyncFailure}
 1   0 Google                         {}
 1   0 Headlight                      {}
 1   0 InstalledOptions               {}
 1   0 InstallShield                  {}
 1   0 InterMute                      {}
 1   0 MDC                            {}
123   1 Microsoft                      {(default)}
 1   0 Microsoft Press                {}
 0   1 Miranda                        {Install_Dir}
 1   0 Netgroup - Politecnico di T... {}
 1   0 Nullsoft                       {}
 2   0 ODBC                           {}
 0   1 Phonemonitor                   {IsRunning}
 1   0 PocketSoft                     {}
 2   0 Policies                       {}
 0   1 Program Groups                 {ConvertedToLinks}
 1   0 Schlumberger                   {}
 0   0 Secure                         {}
 1   0 Siber Systems                  {}
 1   0 SigmaTel                       {}
 1   0 Skype                          {}
 1   0 Soeperman Enterprises Ltd`.    {}
 1   0 Sony Ericsson                  {}
 1   0 Trymedia Systems               {}
 3   1 Widcomm                        {(default)}
 2   0 Windows 3`.1 Migration Status  {}
 1   0 Wise Solutions                 {}


HKLM:\Software>

Or manipulating with variables similar way to FSO!

C:\> set-location variable:
Variable:\> get-ChildItem

Name                           Value
----                           -----
Error                          {DriveNotFound,System.Management.Automation.C..
DebugPreference                SilentlyContinue
ace                            System.Security.AccessControl.FileSystemAcces..
first                          False
catr                           d----
HOME                           C:\Documents and Settings\mzugec
strBiosManufacturer            System.String Manufacturer {get;set;}
Host                           System.Management.Automation.Internal.Host.In..
MaximumHistoryCount            64
MaximumAliasCount              4096
foreach                        System.Collections.ArrayList+ArrayListEnumera..
input                          System.Array+SZArrayEnumerator
StackTrace                     System.Management.Automation.CommandNotFoundE..
ReportErrorShowSource          1
ExecutionContext               System.Management.Automation.EngineIntrinsics
true                           True
VerbosePreference              Continue
MSHHOME                        C:\Program Files\Microsoft Command Shell
false                          False
null
MaximumFunctionCount           4096
ErrorActionPreference          Continue
ReportErrorShowStackTrace      0
?                              True
this
^                              set-location
_
ReportErrorShowExceptionClass  0
ProgressPreference             Continue
MyInvocation                   System.Management.Automation.InvocationInfo
args                           {}
MaximumErrorCount              256
$                              variable:
ReportErrorShowInnerException  0
toString                       NT AUTHORITY\SYSTEM Allow  FullControl
PID                            3824
MaximumDriveCount              4096
MaximumVariableCount           4096


Variable:\>

Or this:

Show me processes and show me sum of working set they are using

C:\> get-process | Measure-Object -property WorkingSet -Sum


Count    : 61
Average  :
Sum      : 169435136
Max      :
Min      :
Property : WorkingSet



C:\>

Maybe now you will understand why I am so fascinated :) Hope so in few days new geeks will come and share their knowledge about MSH :D

Posted

Another super thing for testing purposes - whatif?

What should happend if I run this command?

There is switch (-whatif), that will not perform the action, it will only show you what will happen!

C:\> get-process w* | stop-process –whatif
What if: Operation "stop-process" on Target "wdfmgr (772)"
What if: Operation "stop-process" on Target "winlogon (984)"
What if: Operation "stop-process" on Target "WINWORD (3504)"
What if: Operation "stop-process" on Target "WLTRAY (2808)"
What if: Operation "stop-process" on Target "WLTRYSVC (1888)"
C:\>

In this case it would kill 4 processes

Posted

Wow! No need to use the world, if you know batches, you can see from the code what can be done:

MSH> Function funcHelloWorld {
>> param ($strName = (read-host "What is your name, dear MSFN user?"))
>> "Hi $strName, welcome to wonderful world of Monad!"
>> }
>>
MSH> funcHelloWorld
What is your name, dear MSFN user?Martin
Hi Martin, welcome to wonderful world of Monad!
MSH> funcHelloWorld Martin
Hi Martin, welcome to wonderful world of Monad!
MSH>

Posted
Wow! No need to use the world, if you know batches, you can see from the code what can be done:

MSH> Function funcHelloWorld {
>> param ($strName = (read-host "What is your name, dear MSFN user?"))
>> "Hi $strName, welcome to wonderful world of Monad!"
>> }
>>
MSH> funcHelloWorld
What is your name, dear MSFN user?Martin
Hi Martin, welcome to wonderful world of Monad!
MSH> funcHelloWorld Martin
Hi Martin, welcome to wonderful world of Monad!
MSH>

Wow... that's crazy powerful... it's like a built in C interpreter...

Posted (edited)

It's True

"It will take three to five years to fully develop and deliver," said Microsoft Senior Vice President Bob Muglia this week at Tech Ed 2005. "We're also building a next-generation user interface, taking our existing Microsoft Management Console (MMC) technology to the next level in terms of usability."

Holy Crap! 3-5 YEARS!!! That's just plain stupid. It took 5 years to go from DOS to Win98.

Sorry Martin... looks like it's back to the old batch files :)

Edited by Nois3
Posted

I would like to say something about this hoax (3-5 years)...

It wasnt meant that monad will be ready in 3-5 years. It was ment that Monad will achieve full support in this time period - that means that every tool/utility/program from microsoft, including big ones like exchange, sms, IIS etc. will be ported to MSH

Posted

Yep, I know... There were few articles/comments about it here.

What I am talking about is this board is orientated mainly on "geeks" - home/pro users, that likes to play with system.

And there is nobody here really working/testing Monad :( I would like to have some place to talk about different cmdlets, functions etc. Official forums are quite unhandy :(

Posted

@ Martin,

I think you'll find very few people interested in this.

Personally I'd rather script in VBS. I understand this is a new command shell, and it's not just for scripting. But seriously, if I'm going to spend even 20 minutes working on a "process" to do something, I'm going to save the sucker to a file.

Manually typing in a command to "find all files in C:\temp containing the string 'test' with the extention .tmp" is all well and fine. But anything more complex than that I'm going to write a full blown script.

I fully acknowledge that Monad is much more powerful than the command shell. But I doubt you can do more in Monad than you can in VBS. In addition VBS seems simpler to me.

In my opinion Monad is just another product that Microsoft's marketing department forced them to make. It's not really needed, but they need something similar to UNIX shell's - simply so they can say, "Windows can do that too!"

Perhap's I'm missing the big picture (I usually do - LOL). I respect your opinions Martin.... what am I missing here?

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...