使用命令行读取xar文件内的文件内容

使用命令行读取xar文件内的文件内容

问题描述:

我正在尝试读取xar文件内的文件内容,而不使用命令行解压缩它们。使用命令行读取xar文件内的文件内容

当我运行命令,

xar -tf filename.xar | grep -i 'info' 

它列出所有我找的文件。

但是当我尝试使用阅读这些文件的内容,

cat `xar -tf filename.xar | grep -i 'info'` 

我得到的错误信息说猫:文件名:没有这样的文件或目录

+0

如果XAR像tar然后-t参数代表测试,并且它为tar文件中的每个文件输出一行包含一行的字符串。 Grep给你一个包含'info'的名字的子集。您需要使用-x参数实际将文件从tar中移出。但是,如果tar包含子目录,则-x会将每个文件放入目录或子目录中的新文件中。 – Marichyasana

+1

尝试'xar -x -f filename.xar --to-stdout $(xar -tf filename.xar | grep -i'info')' –

+0

@MarkPlotnick获取* xar:无法识别的选项'--to-stdout' * – Ishan

您的权利,其中跟踪,但问题是您使用cat来尝试读取未从存档中提取的文件。在阅读其内容之前,您需要首先提取存档。使用此代码提取,然后读取文件“信息”文件:

xar -xf filename.xar; cat `xar -tf filename.xar | grep -i 'info'` 

希望这有助于:d(ü可以在末尾添加一个代码删除添加提取的文件)