首页 > 解决方案 > 批处理 - 将一行中的每个单词提取到降价链接

问题描述

这是上面调用的代码。我使用此代码从文件中提取第 5 行,并将其保留在 %%c 中。然后我想获取该行中的每个单词(可以有 1 到第 n 个单词)并创建一个降价链接,例如

[word](word.html)

并将它们附加到 txt 文件中。这就是我到目前为止所拥有的。如果我有 10 个单词,我真的必须在命令中添加所有标记,例如 %%d、%%e 等吗?我可以使用令牌 = 1-* 之类的东西吗?* 表示该行中的最后一个标记?使用 tokens=* 使用整行单词作为我相信的一个标记。

setlocal enabledelayedexpansion
set "lineNr=5"
set /a lineNr-=1
for /f "usebackq delims=" %%c in (`more +!lineNr! "%~1"`) DO (
for /f "tokens=1-2 delims= " %%d in ("%%c") do (
echo [%%d]^(tags/%%d.html^) [%%e]^(tags/%%e.html^) ^<br^> >> index.txt
)
goto :eof
)

标签: batch-filemarkdownextract

解决方案


好的,我这样做了-

set "lineNr=5"
set /a lineNr-=1
for /f "usebackq delims=" %%c in (`more +%lineNr% "overview.md"`) DO (
set "line=%%c"
goto :next
)
:next
for %%i in (%line%) do echo| set /p =[%%i](tags/%%i.html) >> index.txt

在想要的第一行(第 5 行)之后必须跳出循环行列表。


推荐阅读