将域名替换为列表中的相对路径

时间:2015-05-13 14:17:34

标签: batch-file replace

我需要用更多网址替换列表中的域。

我有一个很大的不同网址列表,如

52.214:5469/en/page2/
50.17.168.29:58477/en/house/
home:58477/en/coder
5550:58477/en/enjoy

替换后的此列表将是

mydomain.com/en/page2/
mydomain.com/en/house/
mydomain.com/en/coder
mydomain.com/en/enjoy

所有网址包含/ en /我需要在/ en /

之前替换该部分

如何替换我的网址列表中的所有域名?

提供的所有解决方案都不起作用,因为无法识别列表的路径(“D:\ Programmi Installati \ Macro \ domainlist.txt”)。

感谢您的建议

最好的问候

2 个答案:

答案 0 :(得分:1)

@echo off
setlocal EnableDelayedExpansion

(for /F "usebackq delims=" %%a in ("D:\Programmi Installati\Macro\domainlist.txt") do (
   set "line=%%a"
   echo !line:*/en/=mydomain.com/en/!
)) > temp.txt
move /Y temp.txt "D:\Programmi Installati\Macro\domainlist.txt"

答案 1 :(得分:0)

C:\ Users \ pwatson \ src \ bat>输入domainlist.txt

52.214:5469/en/page2/
50.17.168.29:58477/en/house/
home:58477/en/coder
5550:58477/en/enjoy

C:\ Users \ pwatson \ src \ bat>输入domainlist.ps1

get-content domainlist.txt | % { $_ -replace '(.*?)(/en.*)','mydomain.com$2' }

C:\ Users \ pwatson \ src \ bat> powershell -file domainlist.ps1

mydomain.com/en/page2/
mydomain.com/en/house/
mydomain.com/en/coder
mydomain.com/en/enjoy