阅读 make 的手册页:
`shar' 创建源文件的 shell 存档(shar 文件)。
什么是共享?
它是一个 shell 存档,一个自解压的可执行 shell 脚本,旨在提供一种方便的方式来传送文件存档并通过运行脚本让它们出现。
下面的文字记录中显示了一个示例,该示例仅提供存档中的一个文件output.txt
:
pax> cat shar.bash
#!/bin/bash
tr '[A-Za-z]' '[N-ZA-Mn-za-m]' >output.txt <<EOF
Uryyb sebz Cnk.
EOF
pax> ./shar.bash
pax> cat output.txt
Hello from Pax.
这是一个相当简单的文件,因为它只提供一个文件,并且根本不压缩它,但它应该给你一个大致的想法。
一个真实的可能会给你一些类似于 tar、gzip 和 uuencode 组合的文件,然后通过 uudecode、gunzip 和 tar 传递原始内容。
自解压存档:提取其中包含的一些数据的 shell 脚本。
这有点危险(就像 Windows 上的自解压 .exe),因为它会自行运行以解压自己,因此它可能会执行您未预料到的各种其他事情。
我认为这就是 Oracle 用来在 Linux 上分发 JVM 的方法(让您首先点击许可协议)。
通常,人们只会使用 tar 存档(不能执行任意代码,也不会显示任何对话框)。