如何在Linux中知道某个特定文件是否被压缩或不使用命令?
发布于 2013-02-06 10:36:29
例如,您可以尝试使用file:
$ file test.sh.gz
test.sh.gz: gzip compressed data, was "test.sh", from Unix, last modified: Wed Feb 6 14:35:33 2013发布于 2020-02-07 21:02:58
在bash脚本中
if (file yourTestFile | grep -q compressed ) ; then
echo "Yes, yourTestFile is compressed"
fi发布于 2013-02-06 10:38:50
在上面运行file命令。它将识别压缩文件以及其他常见的文件格式。
注意,ZIP是一种常见的容器格式。例如,EPUB和OpenDocument文件实际上是具有特定内容的ZIP文件。我的file版本识别OpenDocument文件--但是如果您的版本不识别,它可能会说您的OpenDocument文件是一个ZIP文件。这可能不是你所想到的结果:)。
要变得迂腐,你可能并不意味着“这个文件被压缩了”,比如一个OpenDocument,甚至一个压缩成PNG或JPEG的图像。您可能的意思是“这个文件是一个存档”,比如ZIP、unix,或者像gzip这样的单个文件存档。
不过,通常您只需查看文件扩展名,就像在Windows上一样。就像.ZIP意味着ZIP文件,.gz意味着gzip。在Linux上,您还可能看到.bz2 (bunzip2)和.xz (xz)。
https://unix.stackexchange.com/questions/63918
复制相似问题