首页 > 解决方案 > 如何在 Linux 系统上启动内存中的应用程序

问题描述

我读取了加密文件,在缓冲区中解密。我怎么能运行解密的代码?我应该跳到哪里?我知道,在 DOS 中,跳转到缓冲区偏移量 0x100,这是代码入口点。在linux中怎么样?

谢谢西安

标签: linuxshelloperating-system

解决方案


尝试使用 tail -c (输出最后 K 个字节)。

完整答案:

首先从十六进制转换为十进制(转换前去掉“0x”)

然后,找到您的输入文件大小。减去 0x100

hex="100"
# convert hex to dec
dec=$(echo "obase=10; ibase=16; ${hex}" | bc)
# input_file size in bytes
file_size=$(stat --printf="%s" input_file)
truncated_file_size=$(($file_size - $dec))
tail -c $truncated_file_size input_file > new_file 

推荐阅读