Hi Guys,
Before start learning PowerShell first we need to clear or learn some basic logics and basic steps of scripting, that’s why I decide to learn about wildcards first. So Lets Start
Question: what are wildcards?
Answer: A wildcard character can be used to substitute for any other character or characters in a string.
Question: Which wildcards are available in PowerShell and what are there meaning?
Answer: The wildcards are available in PowerShell are * ? and []
Wildcard | Description |
* | matches Zero or More characters |
? | match Exactly one character |
[a-z] | matches a range of characters |
[abc] | matches specified character |
Examples
Wildcard *
Lets Run the following command: Dir * it shows all file and folders in current Directory
Let run another command: Dir *.* it will show all files in current directory. *.* means all file with any file extension
Lets search for all .mp3 files in our current directory.: Dir *.mp3
Now lets search for all file and folders which starts with B: Dir b*
-----------------------------------------------------------------------------------------------
Wildcard ?
Now let try our another wildcard character ? , in this example we are searching for a .txt file which names end with at and we forget what is the name: dir ?at.txt this command return all file which has at.txt at the end.
Let See the another Example, in this example i am looking for a txt whose name is 3 character long. Dir ???.txt
Now lets join our both wildcards and search for all .mp3 and .mp4 available in our current directory: dir *.mp?
-----------------------------------------------------------------------------------------------
Wildcard [] matches specify range of characters
In [] wildcard we can specify a range of characters to match , for example if we specify [a-d] then it means all alphabets between A-D (A,B,C,D) or if we specified [1-8] then it means match all digits between 1-8 (1,2,3,4,5,6,7,8)
Dir: [a-z]at.txt this command check for all file start with a-z character and at.txt at the end
In another example lets search for all folder starts whose name start from 1-6
Dir [1-6]
-----------------------------------------------------------------------------------------------
Wildcard [] matches specify characters
In this wildcard rather then provide a range we specify which characters we want to match. for example we want to match character start with b,c,d then we can specify it as [acd] then it matched only files or folders starts with A,C,D and ignore everything else.
For example: dir [bcl]ook.txt , this command look for all files start with B,C,L and have ook.txt after it
-----------------------------------------------------------------------------------------------
I hope this article helps you to understand Wildcards a little bit :)
Thanks for reading it
Regards
Aman Dhally
Note: Dir command is an alias of Get-Childtem in PowerShell
Hi great article!! Learing PS right now.
ReplyDelete