Skip to main content

Powershell get folder names

Messing up with folders in Powershell?

Got a thousand and hundreds of folders on your drive and you want to get the folder names or just having some free time and you want to organize it?

Powershell will save time to organize those folders and will save time on searching and finding information.

Organizing folders or even organizing your own activities in life makes it easier and systematic.
How to mess up with folders in Powershell? And get the data that you wanted.

Powershell provides a relatively quick and easy way to list folders.

Open Powershell ISE or the Powershell command prompt.

Or you are a command line junkie, dir command will be the first command that will cross your mind if you need to list folders in Windows and it also even works in Linux.

Since "dir" command does a beautiful job of listing folders and files, the outout can easily be pipe to Powershell for further processing.

Try this command in Powershell ISE or Powershell command prompt:

dir d:\ | where-object {$_.PsIsContainer -eq $true} | select-object name

Sample output:

PS C:\Users\user01> dir d:\ | where-object {$_.PsIsContainer -eq $true} | select-object name

64 bit win 2012
70-417 html notes win2012

It will list the folder names on the drive specified on the command.

To get the last write time for each folder use this command:

dir d:\ | where-object {$_.PsIsContainer -eq $true} | select-object name,lastwritetime

Sample Output:

Name                          LastWriteTime
----                          -------------

64 bit win 2012               11/14/2012 9:48:40 PM
70-417 html notes win2012     5/30/2015 4:44:57 PM

To include the path for each folder type this command:

dir d:\ | where-object {$_.PsIsContainer -eq $true} | select-object fullname

Sample Output:

D:\64 bit win 2012
D:\70-417 html notes win2012

If the output of the commands is just overwhelming, too much information that you can't even process is good as nothing.

If there are hundreds or thousands of data, filter the output by this command:

dir d:\ | where-object {$_.PsIsContainer -eq $true} |  Select-object name | where {$_.Name -like "70*"}

The "-like" operator will filter any folder names that starts with the word "70" on the folder name.

If you are looking for a folder name but you just remember a part of the folder name use this command:

dir d:\ | where-object {$_.PsIsContainer -eq $true} |  Select-object name | where {$_.Name -match "70*"}

The command will search for any folders that has "7" or "70" on each folder name.

Sample output of the command that uses "-match "70*":

70-417 html notes win2012
Intel Wireless LAN Driver Win7x86-64bit
New folder_70_
wireless lan driver win7x86-64bit


"dir" and "ls" command in Powershell is an alias for Get-ChildItem or gci for short.

That's all, till next time. Try it messed up with the folder names. The command does not remove, delete or rename the folders so you are safe to play with it.

Cheers..Happy coding!!!


How to Recite the Holy Rosary?

Free Android App with No Ads:

Amidst the daily toils and hard work.

It's always a good thing to get down to your knees and pray.

Check out this free Android app on Google Play.

Search "soulrefresh" on Google Play store.

Then click and install:  Heaven's Dew Fall 

A true prayer delights the heart and gladdens the soul.

Be meek and humble of heart in prayer.

Click on links below to find out more:

Catholic Rosary Guide  for Android:

Divine Mercy Chaplet Guide (A Powerful prayer):


Popular posts from this blog

Copy a single file using robocopy

Copy a single file using robocopy from a local folder to a shared folder on the network.
A simple rule of thumb before any disaster strike, don't interchange the source and the destination.

If source and destination is mistakenly reverse, files might get overwritten. To avoid any loss of data do a test with a dummy file to ensure things work perfectly.
Robocopy [source][destination]   [file to be copied]
robocopy c:\local_c_folder  \\PC_network\shared_folder   file_to_be_copied_xx.txt
The command will be completed successfully provided the network access right has no issues.

Robocopy works quite good on large files. A simple copy or xcopy command will also work but the speed might vary.

However, if the file (ex. an ISO file) and is more than 4GB and the filesystem  of the thumbdrive or the storage is FAT system, then robocopy or any methods of copying will not work. Since FAT has a file size limitation of less than 3GB.

Robocopy is free it can be accessed from command line. No ne…

WMIC List printers

WMIC comes handy if you are a command line junkie.

To list printers via command line type:

wmic printer get name  = = = this will list all the printers installed on a workstation

To list the printer name and the port name of the printers, type this command:

wmic printer get name, portname

Type this command below to list the printer drivers:

wmic printer get name, drivername

To get the device id:

wmic printer get name, deviceid

You can deploy a batch file startup script to check which printer is installed on the computers and redirect the output to a shared folder.

PowerShell can also be used in conjunction with WMIC command:

Get Printer Driver Path and Name:

To see more WMIC tips, click on WMIC label below.



Catholic Rosary Guide  for Android: Pray the Rosary every day, countless blessings will be showere…

WMIC get computer name

WMIC get computer model, manufacturer, computer name and  username.
WMIC is a command-line tool and that can generate information about computer model, its manufacturer, its username and other informations depending on the parameters provided.
Why would you need a command line tool if there’s a GUI to check?
If you have 20 or 100 computers, or even more. It’s quite a big task just checking the GUI to check the computer model and username.
If you have remote computers, you need to delegate someone in the remote office or location to check.
Or you can just write a batch file or script to automate the task.
Here’s the code below on how get computer model, manufacturer and the username.
Open an elevated command prompt and type:
wmic computersystem get "Model","Manufacturer", "Name", "UserName"
Just copy and paste the code above, the word “computersystem” does not need to be change to a computer name.
A sample output below will be generated if the co…