Grep-ing in Powershell

UNIX users who are so used to grep would ask “how do I grep in Powershell?”. Here’s how:

In Bash we write:

ls | grep ".aspx"

The equivalent in Powershell would be:

ls | where {$_ -match ".aspx"}

Bash@Linux output:

[root@gw-1 easilogin]# ls -all | grep ".aspx"
-rwxrwSrwt 1 root root   682 Jul 29 20:38 AccountBanned.aspx
-rwxrwSrwt 1 root root    77 Jul 29 20:38 AccountBanned.aspx.vb
-rwxrwSrwt 1 root root  2320 Jul 29 20:38 CodeAuthentication.aspx
-rwxrwSrwt 1 root root  1623 Jul 29 20:38 CodeAuthentication.aspx.vb
-rwxrwSrwt 1 root root  1459 Aug  1 14:25 ForgetPassword.aspx
-rwxrwSrwt 1 root root  3563 Aug  1 14:25 ForgetPassword.aspx.vb
-rwxrwSrwt 1 root root  2888 Jul 29 20:38 login.aspx
-rwxrwSrwt 1 root root  8298 Jul 29 20:38 login.aspx.vb
-rwxrwSrwt 1 root root    98 Jun 23 12:54 logout.aspx
-rwxrwSrwt 1 root root  2864 Aug  3 21:12 My_Account.aspx
-rwxrwSrwt 1 root root  1704 Aug  3 21:12 My_Account.aspx.vb
-rwxrwSrwt 1 root root   475 Jul 29 20:38 NotAuthenticated.aspx
-rwxrwSrwt 1 root root    78 Jul 29 20:38 NotAuthenticated.aspx.vb

Powershell@Windows2008 output:

PS Microsoft.PowerShell.Core\FileSystem::\\192.168.1.11\inetpub\wwwroot\easilogin> ls | where {$_ -match ".aspx"}

Directory: Microsoft.PowerShell.Core\FileSystem::\\192.168.1.11\inetpub\wwwroot\easilogin

Mode                LastWriteTime     Length Name
----                -------------     ------ ----
-a---         7/29/2008   8:38 PM        682 AccountBanned.aspx
-a---         7/29/2008   8:38 PM         77 AccountBanned.aspx.vb
-a---         7/29/2008   8:38 PM       2320 CodeAuthentication.aspx
-a---         7/29/2008   8:38 PM       1623 CodeAuthentication.aspx.vb
-a---          8/1/2008   2:25 PM       1459 ForgetPassword.aspx
-a---          8/1/2008   2:25 PM       3563 ForgetPassword.aspx.vb
-a---         7/29/2008   8:38 PM       2888 login.aspx
-a---         7/29/2008   8:38 PM       8298 login.aspx.vb
-a---         6/23/2008  12:54 PM         98 logout.aspx
-a---          8/3/2008   9:12 PM       2864 My_Account.aspx
-a---          8/3/2008   9:12 PM       1704 My_Account.aspx.vb
-a---         7/29/2008   8:38 PM        475 NotAuthenticated.aspx
-a---         7/29/2008   8:38 PM         78 NotAuthenticated.aspx.vb
One Comments Post a Comment
  1. Jerry Loyd says:

    Thanks for this post. I was on the wrong track till I found this. I just happen to be wanting to filter the Process list too!

Leave a Reply




Akismet verifies all comments posted here to screen for spams. If your post fails, please try again by removing links, suspicious and random words.