strings 命令本身不能直接处理压缩文件,因为它主要用于从二进制文件中提取可打印的字符串。但是,你可以先解压缩文件,然后再使用 strings 命令处理解压后的文件。
例如,如果你有一个名为 example.tar.gz 的压缩文件,你可以先使用 tar 命令解压缩它:
tar -xzvf example.tar.gz
这将解压缩文件并生成一个名为 example 的文件。然后,你可以使用 strings 命令处理解压后的文件:
strings example
如果你想在一行中完成这个过程,可以使用管道(|)将 tar 命令的输出传递给 strings 命令。但是,请注意,这可能会导致 strings 命令处理一个包含多个文件名的单个字符串,而不是逐个处理每个文件。为了避免这个问题,你可以使用 find 命令结合 -exec 选项来实现:
find . -name '*.txt' -exec strings {} \;
这将查找当前目录及其子目录中的所有 .txt 文件,并对每个文件执行 strings 命令。你可以根据需要修改文件名模式以匹配你要处理的压缩文件类型。