我们使用Xidel进行抓取,并使用FNR查找和替换来替换文本。该过程:刮除.txt文件中的值,然后替换所有其他现有文件中的值。
命令:
for /f "DELIMS=" %v in ('^"xidel -s input.txt -e "($raw)"^"') do set "values=%v"
如果input.txt
只有两个值,它将输出两次:
user@pc C:\
$ set "values=value1"
user@pc C:\
$ set "values=value2"
现在我们运行FNR文本并替换:
fnr.exe --cl --find "#replacevalues" --replace "!values!" --silent --dir "%cd%" --fileMask "output.txt"
除output.txt
以外的所有作品均仅包含value2
。不管刮了多少行,它仅打印最后一项(这是动态的,.txt文件始终具有从1到10或更多的随机行数)
output.txt
应该包含:
value1
value2
Xidel可以将其正确打印到命令行中
xidel -s input.txt -e "($raw)"
value1
value2
我们如何将其打印到已经具有随机内容的现有.txt文件中,并且只有项目#replacevalues
被替换为抓取的值,这意味着它也会使行折断并推送任何现有内容?