![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-08 18:10 |
共 47,811 主题排行 / 349,895 发帖 / 今日 0 篇 / 48,253 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » [求助] 如何取出lnk内的实际路径 (VBS) |
| 可打印版本 936 / 13 |
| 第1楼 sylovanas | 发表于 2008-04-01 22:41 |
| 初级用户 发帖 42 积分 107 | |
|
[求助] 如何取出lnk内的实际路径 (VBS) 搜索过文批处理可用find ":\"来处理
但常常会碰到如 W i n d o w s \ 1 2 3 . e x e C:\ C:\windows\123.exe 上面位置不一定排序不一定 但我只要取123.exe那一行,目前判断是没办法所以想用vbs来提取看看 但vbs我不懂不知道有没有高人可以帮忙处理看看 |
|
| 第2楼 abcd | 发表于 2008-04-02 01:23 |
| 银牌会员 发帖 739 积分 1,436 | |
| 第3楼 abcd | 发表于 2008-04-02 02:00 |
| 银牌会员 发帖 739 积分 1,436 | |
| 第4楼 sylovanas | 发表于 2008-04-02 02:02 |
| 初级用户 发帖 42 积分 107 | |
|
感谢
如果说要将他结果自动写入文件的话要怎么改呢? 是不是改 msgbox oShellLink.TargetPath 这一段? |
|
| 第5楼 sylovanas | 发表于 2008-04-02 02:07 |
| 初级用户 发帖 42 积分 107 | |
|
这个是我之前写的代码,用来抓启动内的快捷
不过有部分快捷会有问题 有用第三方工具sed和grep dir /a/b "%startup%" >.\temp\startup1.1 for /f "tokens=*" %%a in (.\temp\startup1.1) do echo %startup%\%%a>>.\temp\startup1.2 dir /a/b "%startup1%" >.\temp\startup1.1 for /f "tokens=*" %%a in (.\temp\startup1.1) do echo %startup1%\%%a>>.\temp\startup1.2 if exist .\temp\startup1.2 for /f "tokens=*" %%a in (.\temp\startup1.2) do echo %%~a|grep -iq "\.lnk$" && ( find ":\" "%%~a"|sed -r "s/^ +//;/^.:\\/!d" >.\temp\startup1.3 echo %%~taa %%~a>>.\temp\startup1.5 for /f "tokens=*" %%g in (.\temp\startup1.3) do echo %%~tag %%~g|sed "s/.*/ => &/" >>.\temp\startup1.5 ) || (echo %%~taa %%~a)>>.\temp\startup1.5 if exist .\temp\startup1.5 sed "s/^ => .*$/&\n/" .\temp\startup1.5|more >>log.txt |
|
| 第6楼 sylovanas | 发表于 2008-04-02 02:11 |
| 初级用户 发帖 42 积分 107 | |
Originally posted by abcd at 2008-4-2 02:07 AM: |
|
| 第7楼 abcd | 发表于 2008-04-02 02:19 |
| 银牌会员 发帖 739 积分 1,436 | |
| 第8楼 sylovanas | 发表于 2008-04-02 02:26 |
| 初级用户 发帖 42 积分 107 | |
Originally posted by abcd at 2008-4-2 02:19 AM: |
|
| 第9楼 sylovanas | 发表于 2008-04-02 02:31 |
| 初级用户 发帖 42 积分 107 | |
Originally posted by abcd at 2008-4-2 02:22 AM: 感谢 不过刚刚有再测试 这一次跳 行:4 字元:40 错误:无法判定字串常数的结尾 程式码:800A0409 [ Last edited by sylovanas on 2008-4-2 at 02:41 AM ] |
|
| 第10楼 sylovanas | 发表于 2008-04-02 02:41 |
| 初级用户 发帖 42 积分 107 | |
|
好
不过lnk档直接压缩似乎有问题的样子 我先将副档名改为lnk1,下载之后先将副档名改回lnk之后在测试 http://upload.cn-dos.net/img/210.rar [ Last edited by sylovanas on 2008-4-2 at 02:44 AM ] |
|
| 第11楼 sylovanas | 发表于 2008-04-02 02:51 |
| 初级用户 发帖 42 积分 107 | |
|
是的该档案连接是有效的
连接的档案也要吗? 那我就一并上传试看看了 http://upload.cn-dos.net/img/211.rar 放置的位置是在 %CommonProgramFiles%\VideoMate 这个是那个快捷连接的主档案 [ Last edited by sylovanas on 2008-4-2 at 02:52 AM ] |
|
| 第12楼 abcd | 发表于 2008-04-02 03:01 |
| 银牌会员 发帖 739 积分 1,436 | |
|
发现只要快捷方式的"起始位置“为空,
用more "%~s1"|findstr ":\\." 确实不能获取路径的。 填上位置后,就可以了。 即使再次删除起始位置,一样也能找到的 [ Last edited by abcd on 2008-4-2 at 03:05 AM ] |
|
| 第13楼 sylovanas | 发表于 2008-04-02 03:18 |
| 初级用户 发帖 42 积分 107 | |
|
晕
真是怪 还是非常感谢abcd 这个批次要用在很多台电脑上面的,没办法说手动去增加起始位置是比较麻烦的地方 abcd也早点休息吧,太晚睡对身体不好 |
|
| 第14楼 nikekkaa | 发表于 2008-05-27 13:19 |
| 新手上路 发帖 3 积分 6 | |
|
找了半天,没想到就在身边~谢谢2楼分享的.
|
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |