什么是 hexdump 命令,它在没有参数的情况下做什么?

什么是 hexdump 命令,它在没有参数的情况下做什么?

我运行了 hexdump 命令,没有参数,我的 ubuntu 机器死机了...我做了什么?这个命令没有参数能做什么?

它有什么用处?

答案1

这是来自man hexdump

hexdump 实用程序是一个过滤器,它以用户指定的格式显示指定的文件或标准输入(如果没有指定文件)。

简而言之,它将文本从一种格式转换为另一种格式。传统上,hexdump 主要用于调试,尤其是使用低级库的程序。

但是现在有了unicode,我有时会用它来获取不同的字符值或者转换行或文件。

因为它是一个过滤器,所以你发送文本进去一个简单的方法是使用管道运算符 ( |)。

它以 ASCII、十进制、十六进制或八进制形式输出显示的文本。您可以使用格式说明符来确定输出。这些是您在 之后放置的命令选项hexdump

如果您想在命令行上看到结果,您需要从开始echo

所以就是echo text-to-transform | hexdump options optional-format-specifiers

手册页中的一个示例是:

echo hello | hexdump -v -e '/1 "%02X\n"'

输出每个字母的十六进制值。

这个例子可能看起来没什么用,但请记住,可以以人类可读的形式重新编码整个文件或转储内存内容。

如果您不向 hexdump 发送输入,它会一直等待,似乎什么也不做。如果您hexdump自己运行,就会发生这种情况。当您说它冻结时,是否发生了更多情况?

答案2

它以人类可读的格式(通常是十六进制)打印数据。与大多数 unix 命令一样,它无需任何参数即可读取 stdin 上的数据并写入 stdout,因此如果您没有重定向 stdin,那么它只是在等待您在终端中输入一些数据。计算机没有冻结,只有命令在等待输入。您可以使用 Ctrl-C 中断命令,或者 Ctrl-D 表示输入结束。

相关内容