我有一个问题,我现在已经解决了很长一段时间了。一直在寻找,似乎无法提出解决方案。
我需要创建一个批处理文件,提示用户输入他们的电子邮件地址。然后将以“@”字符修剪此电子邮件地址。其余的域将在“nslookup”命令中使用,但我希望它只过滤邮件交换服务器。
示例:
“Cooldude@gmail.com”
然后下一位是我需要的:
“gmail.com”
然后我需要发生以下情况:
nslookup
set type=mx
gmail.com
这就是我到目前为止:
@echo off
set /p email="Enter your email address : "
call :findString email "@" pos
echo.%pos%
set ex=%email:~%-pos%%
echo Email Exchange is: %ex%
pause
:findString
SETLOCAL ENABLEDELAYEDEXPANSION
set "pos="
set "str=!%~1!"
for /L %%a in (0,1,1023) do (
set "s=!str:~%%a!"
if not defined pos if "%~2!s:*%~2=!"=="!s!" set "pos=%%a"
)
ENDLOCAL & IF "%~3" NEQ "" SET "%~3=%pos%"
GOTO:EOF
提前完成! ; P
答案 0 :(得分:2)
试试这个:
@echo off &setlocal
set "email=Cooldude@gmail.com"
set "email=%email:*@=%"
echo %email%
endlocal