批处理程序删除第五个斜杠后删除txt中的所有内容

时间:2018-10-31 16:53:19

标签: windows cmd

我有多个包含多个链接的txt文件,必须在五个斜杠后将其修剪。
批处理文件应在第五个斜杠后删除.txt文件中该行中的所有内容,我该怎么办?

.txt文件的示例:
之前:
http://www.website.net/sr/PD2QPVGPRH2/?NameOfTheFile_05_720p.rar http://www.website.net/sr/SWLYPVGPRNV/?NameOfTheFile_05_1080p.part1.rar http://www.website.net/sr/23IXPVGPWXFO/?NameOfTheFile_05_1080p.part2.rar

之后:
http://www.website.net/sr/PD2QPVGPRH2/ http://www.website.net/sr/SWLYPVGPRNV/ http://www.website.net/sr/23IXPVGPWXFO/

提前谢谢! ^^

2 个答案:

答案 0 :(得分:0)

给出当前目录中的文件sample.txt

http://www.website.net/sr/PD2QPVGPRH2/?NameOfTheFile_05_720p.rar
http://www.website.net/sr/SWLYPVGPRNV/?NameOfTheFile_05_1080p.part1.rar
http://www.website.net/sr/23IXPVGPWXFO/?NameOfTheFile_05_1080p.part2.rar

这批

:: Q:\Test\2018\10\31\SO_53088499.cmd
@Echo off
For %%F in (*.txt) Do (
  For /f "delims=?" %%A in (%%F) Do Echo:%%A
)

将输出:

> SO_53088499.cmd
http://www.website.net/sr/PD2QPVGPRH2/
http://www.website.net/sr/SWLYPVGPRNV/
http://www.website.net/sr/23IXPVGPWXFO/

可以轻松地将其重定向到新文件。

答案 1 :(得分:0)

如果您需要在第五个(第5个)SOLIDUS(斜线)处精确地结束字符串,则可以使用像这样的FOR循环。请注意,这非常特定于URL字符串。在连续定界符的情况下,FOR循环定界符不提供元素。

包含URL字符串的数据文件。

C:>type urltrim.txt
http://www.website.net/sr/PD2QPVGPRH2/?NameOfTheFile_05_720p.rar
http://www.website.net/sr/SWLYPVGPRNV/?NameOfTheFile_05_1080p.part1.rar
http://www.website.net/sr/23IXPVGPWXFO/?NameOfTheFile_05_1080p.part2.rar

读取字符串并截断代码。

C:>type urltrim.bat
@ECHO OFF
FOR /F "delims=/ tokens=1-4" %%a IN (urltrim.txt) DO (
    echo %%a//%%b/%%c/%%d/
)

示例执行。

C:>CALL urltrim.bat
http://www.website.net/sr/PD2QPVGPRH2/
http://www.website.net/sr/SWLYPVGPRNV/
http://www.website.net/sr/23IXPVGPWXFO/