一个朋友恶搞,把一封英文的email中所有的字母都向前移了3位。
例如:现在的d其实是a,现在的p其实是m,现在的a其实是,现在的odzuhqfh应该是Lawrence...
对应关系是这样的:
set str1=defghijklmnopqrstuvwxyzabc
:: str1 is to be decoded
set str2=abcdefghijklmnopqrstuvwxyz
受小写转大写.cmd的启发,我想能不能也一个吧这封email还原的批处理。。。
于是:
@echo off
set str1=defghijklmnopqrstuvwxyzabc
:: str1 is to be decoded
set str2=abcdefghijklmnopqrstuvwxyz
:main
cls
set str=
set /p str= Please enter string (Press ENTER if you want to exit directly):
if not defined str exit
cls
echo.
echo Before decoded: "%str%"
echo.
for /l %%i in (0,1,25) do (
call set char1=%%str1:~%%i,1%%
call set char2=%%str2:~%%i,1%%
call :change
)
echo ____________________________________________
echo.
echo Decoded: "%str%"
echo.
echo Press any buttom to decode again......
pause>nul
goto main
:change
call call set str=%%%%str:%%char1%%=%%char2%%%%%%
goto :eof
@echo off
本以为万事大吉,但可惜g到c对应的是对的,即d到z,但是最前面的d,e,和f所对应的并不是a,b,和c,而是x,y,和z!!这到底是怎么回事?或者说,有什么别的方法能达到同样的效果?本人是绝对的菜鸟,请大家多多关照。。。
[ Last edited by henryxrl on 2010-9-17 at 12:59 ]
例如:现在的d其实是a,现在的p其实是m,现在的a其实是,现在的odzuhqfh应该是Lawrence...
对应关系是这样的:
set str1=defghijklmnopqrstuvwxyzabc
:: str1 is to be decoded
set str2=abcdefghijklmnopqrstuvwxyz
受小写转大写.cmd的启发,我想能不能也一个吧这封email还原的批处理。。。
于是:
@echo off
set str1=defghijklmnopqrstuvwxyzabc
:: str1 is to be decoded
set str2=abcdefghijklmnopqrstuvwxyz
:main
cls
set str=
set /p str= Please enter string (Press ENTER if you want to exit directly):
if not defined str exit
cls
echo.
echo Before decoded: "%str%"
echo.
for /l %%i in (0,1,25) do (
call set char1=%%str1:~%%i,1%%
call set char2=%%str2:~%%i,1%%
call :change
)
echo ____________________________________________
echo.
echo Decoded: "%str%"
echo.
echo Press any buttom to decode again......
pause>nul
goto main
:change
call call set str=%%%%str:%%char1%%=%%char2%%%%%%
goto :eof
@echo off
本以为万事大吉,但可惜g到c对应的是对的,即d到z,但是最前面的d,e,和f所对应的并不是a,b,和c,而是x,y,和z!!这到底是怎么回事?或者说,有什么别的方法能达到同样的效果?本人是绝对的菜鸟,请大家多多关照。。。
[ Last edited by henryxrl on 2010-9-17 at 12:59 ]
