问题描述
如何撤销此命令的操作:
od -A n -t x1
我发现只有命令xxd -r
,但对我不起作用。
解决方法
问题:如何撤销此命令的操作:od -A n -t x1
答案:您不能。
您提供的命令将删除重复的行。要反转该命令,您需要将那些重复的行放回去,这需要您知道每行重复多少次。但是您提供的命令也会删除该信息。
如果我们假设没有重复的行(或者如果您将-v
添加到od
来保留它们),则可以使用xxd -p -r
。
请注意,xxd -r
旨在颠倒 xxd
的输出。它不用于反转任何其他程序的输出,包括od
。但是,至少在我的测试中,它可以应付od -A n -t x1
输出中的空格。
编辑:以下段落旨在阐明我在上面的内容。
xxd -r
用于反转xxd
的输出。解决此问题的起点应该是运行xxd
并将其输出与od
或od -A n -t x1
的输出进行比较。事实证明,xxd
的输出与od
或od -A n -t x1
的输出非常不同,因此我们期望xxd -r
失败。
接下来要看的是是否可以传递xxd
一些额外的参数,以使其输出看起来更像od
的输出;然后可以将相同的参数添加到xxd -r
(仅适用于某些参数)。例如,您可以使用xxd -p
反转xxd -p -r
的输出。 xxd -p
的输出看起来与od -A n -t x1
的输出更相似吗?是。实际上,除了od
使用不同的行长和添加空格之外,输出是相同的。
现在使输出实际上相同是一个稍微困难的问题。但是,至少根据我的测试,您不必这样做。您只需将od -A -n -t x1
的输出直接传递到xxd -p -r
。
如果要使输出实际上相同,则应该能够使用-w
的{{1}}参数并通过od
用管道输送输出。