本帖最后由 pcl_test 于 2017-8-2 08:38 编辑
在特定路径中搜索含有特定文件夹的路径,并输出该路径中特定的一截,请问如何实现?
举例:- for /f "delims=\ tokens=6" %%i in ('dir/ad/b/s "%userprofile%\Application Data\Skype\chatsync"') do (
- if exist "%userprofile%\Application Data\Skype\%%i\main.db" if exist "%userprofile%\Application Data\Skype\%%i\config.xml" echo 存在 Skype 用户名:%%i
- )
复制代码 在以上代码中chatsync就是特定的文件夹,而我需要输出的是chatsync上一层的文件夹名称。
在我举例的代码中是从左边算起选择路径的第六段输出,假设实际路径与例子不同,我要输出的文件夹名称不是在从左算起第六段,那么我这个代码输出的结果就是错误的。
在无法事先知道需要输出的文件夹名称在路径中的哪一段的情况下,由于不管路径如何变化,Skype帐号名总是在chatsync上一层,所以能否从右边算起选择路径倒数第二段输出?
问题已解决,谢谢apang大侠的代码(因为他的从右边选起的代码比我自己的从左边选起的代码显得更具有“正确”性) |