输入
后netsh wlan show interfaces
netsh wlan show interfaces > interface.txt
在我系统的命令提示符下,我获取了当前的连接配置文件。我有兴趣找出' Profile
'的字符串部分。 ' :
'之后的部分部分来自interface.txt
文件。
我更喜欢这个程序去搜索'个人资料'使用findstr
然后在同一行中提取字符串部分,以便可以重用生成的代码。我该怎么做呢?
另外,如何使用string
文件中的text
数据将其作为integer
数据进行操作?
示例输出:
答案 0 :(得分:1)
for /f "tokens=1,* delims=:" %%i in ('netsh wlan show interfaces^|find " Profile"') do set p=%%j
echo %p: =%
for /f "tokens=1,* delims=:" %%i in ('netsh wlan show interfaces^|find " Receive rate"') do set r=%%j
echo %r:~1%
编辑 npocmaka的评论提醒我,有些值(例如“物理地址”)包含冒号。编辑代码以完成这些值。
注意:这些值有一个起始空间;通过为分隔符添加空间,可以避免这种情况,但另一方面,某些描述有多个单词(“网络类型”),因此这是有问题的。所以我决定让他们进入并“替换”变量。
答案 1 :(得分:1)
您可以使用FOR
和:
作为分隔符来简单地拆分字符串。说你的刺痛就像
设置yourstring = 某些内容: somethingelse 更多内容并且您想要访问 somethingelse
然后你可以使用它:
REM this is to get everithing on the right of :
FOR /F "tokens=2 delims=:" %%X IN ("%yourstring%") DO SET substring=%%X
REM this is to get the first token after the first white space
FOR /F "tokens=1 delims= " %%X IN ("%substring%") DO SET yourvalue=%%X
现在%yourvalue%将包含 somethingelse 。
回答你的第二个问题:
如果您希望将表示数字的字符串视为整数,则必须使用SET /A varname=%stringWithTheInteger%
。 /A
允许您对变量进行算术运算。