批处理文件(命令行)在“Web 文档”选项卡下的“URL:”字段中获取 Internet 快捷方式 (.url) 的目标路径
我需要从文件夹(桌面)中的所有快捷方式及其各自的目的地中获取目标,以帮助我的计算机维修店的人员通过访问这些网站来防止客户/客户重新感染他们的计算机。
我已经有要显示的代码(如下),但是当它找到一个目标时,我也需要显示目标(.url 快捷方式文件)
dir /b "%userprofile%\Desktop*.url"
-谢谢,-G
批处理文件(命令行)在“Web 文档”选项卡下的“URL:”字段中获取 Internet 快捷方式 (.url) 的目标路径
我需要从文件夹(桌面)中的所有快捷方式及其各自的目的地中获取目标,以帮助我的计算机维修店的人员通过访问这些网站来防止客户/客户重新感染他们的计算机。
我已经有要显示的代码(如下),但是当它找到一个目标时,我也需要显示目标(.url 快捷方式文件)
dir /b "%userprofile%\Desktop*.url"
-谢谢,-G
我想我理解你的问题,这是一个批处理文件,它将遍历给定文件夹中的链接,然后回显每个目标 URL
批处理文件:
echo off
setlocal enableextensions enabledelayedexpansion
pushd %1
for %%F in (%1\*.url) do (
echo %%~dpnxF
call :findurl "%%~dpnxF"
)
popd
goto end
:findurl inputfile
set url=
for /f "tokens=2 delims==" %%i in ('findstr URL %1') do set url=%%i
echo %url%
echo -----
:end
用法:
MyBatchFile.bat C:\users\Username\Desktop
预期输出:
d:\Users\Martyn\Desktop\test\link - Copy.URL http://google.co.uk ----- d:\Users\Martyn\Desktop\test\link.URL http://stackoverflow.com/questions/17687358/batch-file-command-line-to-get-target-path-of-internet-s hortcut-url-in-the -----
[编辑] 只是快速解释一下发生了什么,.url 文件基本上只是文本文件,在记事本中打开一个即可查看。URL 在线 URL= http://foo.com
这批只是读取目录中的每个 .url 文件,然后在“URL =”之后回显 URL 行上的所有内容
希望这就是你的意思!
马丁
这种格式也可以。
@echo off
Setlocal Enableextensions
Setlocal Enabledelayedexpansion
for /r %%X in (*.url) do (
set shortcut="%%X"
echo SHORTCUT: !shortcut!
for /f "tokens=2 delims==" %%i in ('findstr URL !shortcut!') do (
set url=%%i
echo.
echo URL PATH: !url!
)
echo ----------------------------------------------------------------
echo.
)
:end