It annoys me when I am working with PowerShell try to pipe the results of a cmdlet into a exe which doesn’t understand pipelined data. To solve this problem I began aliasing some of the common programs I would like to pipe data to with custom functions.
For example, I have the following function in my profile to alias notepad.exe:
function n($file) {
if($file -ne $null){
notepad $file
} else {
notepad $input
}
}
I can use the function named n whenever I want to open a file using notepad. This function will take a file name either through piping or as a regular argument.
So I can open a file in notepad this way:
n someFile.txt
or this way:
ls *.txt | n
You can create similar functions for other programs as well. Here is the one I use for Emacs:
$emacs = "emacs.exe -nw --no-splash"
function emacs($file){
if($file -ne $null){
Invoke-Expression "$emacs $file"
}
else {
Invoke-Expression "$emacs $input"
}
}

I’m extremely impressed with your writing skills
and also with the layout on your weblog. Is this a paid theme or did you customize it yourself?
Anyway keep up the nice quality writing, it’s rare to see a nice blog like
this one today.