Monthly Archives: November 2005

MSH: Counting and Deleting Files

In my MKS Toolkit past I would have executed the following to delete a certain type of file:   find .  -name "~*.*" -exec rm -f {} ;   Actually before executing this I might have done a paranoid count … Continue reading

Posted in Uncategorized | Leave a comment

MSH: Open MSH Prompt Here Toy

Like the Windows XP Power Toy "Open Command Window Here", this utility installs a context menu item into the Windows Explorer context menu for drives and folders.  The install is a very simple affair.  It verifies that you have MSH installed … Continue reading

Posted in Monad | 1 Comment

MSH: Configure MSH Like a VS 2005 Command Prompt

Assuming you have VS 2005 installed, just add the following to your profile:   # ———————————————————————# Configure the environment to build under VS 2005 / .NET 2.0# ———————————————————————$env:VSINSTALLDIR="${env:ProgramFiles}\Microsoft Visual Studio 8"$env:VCINSTALLDIR="${env:ProgramFiles}\Microsoft Visual Studio 8\VC"$env:DevEnvDir="${env:VSINSTALLDIR}\Common7\IDE"$env:FrameworkSDKDir="${env:VSINSTALLDIR}\SDK\v2.0"   $FrameworkPath=    [Runtime.InteropServices.RuntimeEnvironment]::GetRuntimeDirectory()$env:FrameworkDir=$(parse-path $FrameworkPath -Parent)$env:FrameworkVersion=$(parse-path $FrameworkPath … Continue reading

Posted in Monad | Leave a comment

MSH: What’s with the Codename Monad?

Monad is the codename for Microsoft’s new command shell that is currently in beta.  Monad was coined by Gottfried Leibniz, a German philosopher, mathemetican and statesman from the 17th century.  One of his philosophical works was called Monadology.  Here’s a brief … Continue reading

Posted in Monad | Leave a comment

MSH: Memory hogs function

Here’s a script I use to see which processes are hogging memory.  BTW, I tell MSN Desktop Search my whole hard drive so it usually occupies the #1 slot:   function hogs {    get-process | sort PM -des | select … Continue reading

Posted in Monad | Leave a comment

MSH: Saving and Loading History

MSH keeps track of the various commands you execute.  You can view this history using get-history or the alias ghy.  You can invoke a command in history using invoke-history <number> or the alias ihy <number>.  One of the first things … Continue reading

Posted in Monad | Leave a comment

MSBuild: Groking Item Lists, Flattening, Transforms and Batching

One of the more important aspects of MSBuild that you need to grok is how item lists can be manipulated.  An item list typically corresponds to all the files you add to a project in Visual Studio via "Add New … Continue reading

Posted in MSBuild | 3 Comments

MSH: Script Blocks as Data

A feature from Lisp that I really like is the ability to pass code around as data.  One of the very cool aspects of Monad is that you can now easily do this.  That is, code can be placed in storage … Continue reading

Posted in Monad | Leave a comment

MSH: Configuring Shell Shortcuts

For project development, we have a special set of location aliases and we need the PATH, LIB and INCLUDE environment variables set up to build against VC 8.0 (VS 2005).  We store the project specific configuration in a script file called BuildEnv.msh.  In … Continue reading

Posted in Monad | Leave a comment

MSH: Reloading Your Profile

As you experiment with your profile ($Home\My Documents\MSH\Micrsoft.Management.Automation.msh_profile.msh) you quickly get tired of having to fire up a new shell to try your changes.  You can reload your profile easily like so: > . $profile $profile is a MSH variable … Continue reading

Posted in Monad | Leave a comment