Can anyone explain what is :~1%
in the below statement in a batch file? I assigned the value of %variable
to servername and tried echo %variable
. I get the same server name as output. Can anyone explain how the statement below works?
set variable=%variable:~1%
this is notation for subs string expansion , look at this out put form command line you will understand.
C:\>set temp=stackoverflow.com
C:\>echo %temp%
stackoverflow.com
C:\>echo %temp:~5%
overflow.com
C:\>echo %temp:~5,8%
overflow
C:\>
if you have not understood , here is syntax (in my words)
set variable=%variable:~startingCharector [,OptionalLenghtOfCharctors]%
where
OptionalLenghtOfCharctors
by default it takes remaining characters of string.
It's a syntax for substrings from the variable contents, in this case it removes the first character.
See set /?
for help
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With