是不是很烦人,甚至很累,在向他们发送档案后必须向联系人解释它是什么以及如何解压缩它?如果您回答“是”,那么您会喜欢Linux中的shar。
使用shar,您可以将许多文件“打包”成一个文件。如果将其发送给您的联系人,他们只需确保其可执行并运行以将其提取即可。没有复杂的命令,也无需指导他们完成整个过程。
让我们看看如何使用它将一组文件打包为单个“shar”文件。
安装Shar
默认情况下,大多数Linux发行版中都不包含Shar,因此您必须首先安装它才能创建自动提取Shar文件档案。但是,您不会在软件中心找到它,也不会通过apt自己找到它。相反,您将必须安装包含它的较大的“ sharutils”软件包。为此,请启动终端并使用以下命令:
[linuxidc@linux:~/www.linuxidc.com]$ sudo apt install sharutils
查找并准备文件
Shar是一种命令行工具,可一次处理大量文件,并将它们放置在单个存档中。因此,为了方便和易于使用,请创建一个临时文件夹,然后将要包含在shar存档中的所有文件移动或复制到该临时文件夹中。
在您的终端仍处于活动状态的情况下,cd转到您的新建目录。
打包文件
要创建您的shar存档,请运行以下命令:
[linuxidc@linux:~/www.linuxidc.com]$ cd linuxidc
[linuxidc@linux:~/www.linuxidc.com/linuxidc]$ ls
linuxidc.com.jpg linuxidc.com.py linuxidc.Java
linuxidc.com.png linuxidc.com.sh
[linuxidc@linux:~/www.linuxidc.com/linuxidc]$ shar ./* > ../linuxidc.shar
shar: 保存 ./linuxidc.com.jpg (文本文件)
shar: 保存 ./linuxidc.com.png (文本文件)
shar: 保存 ./linuxidc.com.py (文本文件)
shar: 保存 ./linuxidc.com.sh (文本文件)
shar: 保存 ./linuxidc.java (文本文件)
shar: 保存 ./www.linuxidc.com.ogg (文本文件)
将“存档文件名”更改为您的文件名。
让我们对其进行“分解说明”,下面我们来看看如果操作。
当然,最开始的shar就是程序本身。
该./*是输入,而在这种特殊情况下,它的意思是“我们是到该目录中的所有文件。”
>是命令的输入和输出之间的分配器。程序将其理解为“将括号左边的每个输入合并到括号右边定义的单个文件中”。
../linuxidc.shar是输出文件的路径和名称。您可以将其更改为所需的任何内容。
该过程非常快,通常不会超过几秒钟(取决于您的PC的性能)。
创建存档文件后,您可以与联系人共享新文件。尽管它们也需要安装sharutils才能自动提取工作,正如您将在下一步中看到的那样,一切都将比处理典型档案更简单。
提取shar文件
当您的朋友收到shar存档时,他们要做的就是使其成为可执行文件,然后运行它。
假设您的朋友已经sharutils安装,他们可以使用以下命令提取文件:
[linuxidc@linux:~/www.linuxidc.com/linuxidc.com]$ ls
linuxidc.com.shar
[linuxidc@linux:~/www.linuxidc.com/linuxidc.com]$ chmod +x linuxidc.com.shar
[linuxidc@linux:~/www.linuxidc.com/linuxidc.com]$ ./linuxidc.com.shar
x - created lock directory _sh33861.
x - extracting linuxidc.com.jpg (文本文件)
x - extracting linuxidc.com.png (文本文件)
x - extracting linuxidc.com.py (text)
x - extracting linuxidc.com.sh (文本文件)
x - extracting linuxidc.java (文本文件)
x - extracting (文本文件)
x - removed lock directory _sh33861.
就是这样–它包含的文件被提取到同一文件夹中。我们现在可以删除他们发送给我们的原始文件。
大多数Linux桌面为tar,gz,zip等压缩格式提供全面支持,因此shar在这种情况下不是很有用。但是,如果您在服务器(或无头)环境中使用Linux,则shar将非常有用,因为您可以轻松提取档案文件而不必记住各种命令-无需执行额外的步骤,没有标志和开关,也不需要其他要安装的程序。