Batch file 如何使用批处理加密文本文件?

Batch file 如何使用批处理加密文本文件?,batch-file,encryption,Batch File,Encryption,如何使用批处理加密文本文件中的内容?我怎样才能解密它呢 我已经尝试将每个字母设置为一个数字,但我不知道如何将字符串拆分为每个字母并执行此操作 我在youtube上观看了一段帮助将字母转换成数字的视频,但它没有使用文件 这是他在视频中提供的代码 @echo off setlocal enableDelayedExpansion set /p code=Text: set chars=0123456789abcdefghijklmnopqrstuvwxyz for /L %%N in (10 1

如何使用批处理加密文本文件中的内容?我怎样才能解密它呢

我已经尝试将每个字母设置为一个数字,但我不知道如何将字符串拆分为每个字母并执行此操作

我在youtube上观看了一段帮助将字母转换成数字的视频,但它没有使用文件

这是他在视频中提供的代码

@echo off
setlocal enableDelayedExpansion

set /p code=Text:
set chars=0123456789abcdefghijklmnopqrstuvwxyz

for /L %%N in (10 1 36) do (

for /F %%C in ("!chars:~%%N,1!") do (

set "code=!code:%%C=%%N!"

)

)

echo !code! 
pause
请帮忙谢谢

@ECHO OFF
设置abet=abcdefghijklmnopqrstuvxyz!@#-/\。0123456789
设置密码1=8p#j4 9z\6w。ae@0u2r5o!xk-cf1b3g7hmqil/sntdvy
(
对于/f“delims=”%(q20794050.txt)中的%%a,请执行以下操作(
设置行=%%a
呼叫:加密
)
)>q20794050.txt.1
(
对于(q20794050.txt.1)中的/f“delims=”%%a(
设置行=%%a
呼叫:解密
)
)>q20794050.txt.2
后藤:EOF
:破译
设置morf=%abet%
设置自=%cipher1%
转乘
:加密
设置自=%abet%
设置morf=%cipher1%
:trans
设置“enil=”
:翻译
设置$1=%from%
设置$2=%morf%
:transc
如果/i“%line:~0,1%”==“%$1:~0,1%”设置enil=%enil%%$2:~0,1%&转到transnc
设置$1=%$1:~1%
设置$2=%$2:~1%
如果定义为$2转到transc
::无翻译-保留
设置enil=%enil%%行:~0,1%
:transnc
设置行=%line:~1%
如果定义行GOTO transl
回音%enil%
后藤:eof
这里有一种使用简单的Cæsar(替换)代码的方法

abet
可以设置为(可能来自文件)要编码的字符集。类似地,
cipher1
可以设置为翻译集-只需确保
abet
中的每个字符也出现在
cipher1
中即可

任何出现在输入文本中但未出现在
abet
中的字符都不会被翻译

我使用了
q20794050.txt

The quick brown fox [jumps] {over} the lazy dog 9876543210.
9876543210 The quick brown fox !@#-/\ jumps over the lazy dog.f
编码为
q20794050.txt.1

5z4huo\#whp2@xeh @kh[6oa0r]h{@!42}h5z4h.8c-hj@9hyvdtns/liqm
yvdtns/liqh5z4huo\#whp2@xeh @khf1b3g7h6oa0rh@!42h5z4h.8c-hj@9m 
(请注意,最后一行末尾有一个空格…)

并成功地被解密为
q20794050.txt.2

注意:以上内容不会处理某些问题字符,如%&|> @回音 setlocal enableDelayedExpansion 对于/f“tokens=*delims=“%%h in('type%1')do( 设置文本=%%h ) 设置字符=0123456789ABCDEFGHIJKLMNOPQRSTUVXYZ 对于/L%%N in(10 1 36)do( 对于“!字符:~%N,1!”中的/F%%C,请执行以下操作( 设置“text=!text:%%C=-%%N!” ) ) 回声!文本!>%userprofile%\Desktop\encrypted.txt 暂停 (使用不同的.bat文件) @回音 setlocal enableDelayedExpansion 对于/f“tokens=*delims=“%%h in('type%1')do( 设置文本=%%h ) 设置字符=0123456789ABCDEFGHIJKLMNOPQRSTUVXYZ 对于/L%%N in(10 1 36)do( 对于“!字符:~%N,1!”中的/F%%C,请执行以下操作( 设置“text=!text:%%N=%%C!” ) ) 对于(“!text!”)中的/f%%K,请执行以下操作( 设置“文本=!文本:-=!” ) 回声!文本!>%userprofile%\Desktop\decrypted.txt 暂停
(for...do (...))>somefilename
@echo off setlocal enableDelayedExpansion for /f "tokens=* delims= " %%h in ('type %1') do ( set text=%%h ) set chars=0123456789abcdefghijklmnopqrstuvwxyz for /L %%N in (10 1 36) do ( for /F %%C in ("!chars:~%%N,1!") do ( set "text=!text:%%C=-%%N!" ) ) echo !text! > %userprofile%\Desktop\encrypted.txt pause (using a different .bat file) @echo off setlocal enableDelayedExpansion for /f "tokens=* delims= " %%h in ('type %1') do ( set text=%%h ) set chars=0123456789abcdefghijklmnopqrstuvwxyz for /L %%N in (10 1 36) do ( for /F %%C in ("!chars:~%%N,1!") do ( set "text=!text:%%N=%%C!" ) ) for /f %%K in ("!text!") do ( set "text=!text:-=!" ) echo !text! > %userprofile%\Desktop\decrypted.txt pause