Convierta una cadena hexadecimal en una cadena ASCII en un archivo por lotes de Windows [duplicado]
En un archivo por lotes de Windows (cmd), me gustaría convertir el contenido de una cadena hexadecimal en la forma
4C6F67696300000000000000
a su cadena ASCII equivalente, aquí "Lógica". La cadena hexadecimal es siempre del mismo tamaño (12 octetos). Tenga en cuenta que termina en nulo si la cadena tiene menos de 12 caracteres. Solo se requiere la conversión de caracteres ASCII simples e imprimibles (20-7F). Se prefieren las soluciones de lotes puros.
Respuestas
1 mEm
Utilice la certutil
herramienta, consulte certutil /?
para obtener más información.
setlocal enabledelayedexpansion
set "hex=4C6F67696300000000000000"
echo !hex!> temp.hex
call certutil -decodehex temp.hex str.txt >nul
set /p str=<str.txt
echo:
( del temp.hex & del str.txt )>nul
echo Your decoded string is:"!str!".
endlocal
exit /b 0