这是获取TeamViewer(任何版本)服务可执行文件位置的字符串:
for /f "skip=1 delims=" %A in ('wmic path win32_service where "name like 'TeamViewer%'" get pathname') do set POSITION=%A
问题是由wmic引起的,因为它在结果的末尾包含一个空行(在Windows 7命令中),这是输出:
C:\Users\giovanni>for /f "skip=1 delims=" %A in ('wmic path win32_service where "name like 'TeamViewer% '" get pathname') do set POSITION=%A :\Users\giovanni>set POSITION="C:\Program Files\TeamViewer\Version8\TeamViewer_Service.exe" :\Users\giovanni>set POSITION= C:\Users\giovanni>echo %position% ECHO enabled.
如何只使用可执行文件的正确位置获得输出的第二行? (当然也可以跳过最新的一行).
提前谢谢所有人,祝你有个愉快的一天.
乔瓦尼.
这是checktv.bat:
for /f "skip=1 delims=" %%A in ('wmic path win32_service where "name like 'TeamViewer%'" get pathname ^| findstr /r /v "^$"') do set POSITION=%%A echo %POSITION%
像这样:
for /f "skip=1 delims=" %A in ( 'wmic path win32_service where "name like 'TeamViewer%'" get pathname ^| findstr /r /v "^$"' ) do set POSITION=%A
findstr / r / v“^ $”从输出中删除空行.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。