http://www.cnblogs.com/dba001/archive/2011/01/17/1937767.html
makeself是一个小型shell脚本,他可以吧特定目录
下的文件打包成为一个shell脚本类似的文件,并且能够像shell脚本一样执行。例如我在test目录下创建了多个shell脚本和一些配置文件,这
些脚本在执行时可能会相互调用并读取配置文件。使用makeself工具可以将这些文件统一打包成一个脚本并执行,非常的方便。
makeself使用方法:
1、首先makeself:
2、下载完成后会得到makeself.run,文件,直接运行后会得到makeself.sh(可以将该文件拷贝到/usr/bin目录下)
3、makeself.sh [args] archive_dir file_name label startup_script [script_args]:例如makeself.sh test test.sh "hello" ./1.sh
改命令指明需要打包的目录为test目录,打包成的文件命名为test.sh,脚本运行后输出信息为“hello”,首先执行的脚本十1.sh
以下是一些常用的参数,可以作为参考:
- args are optional options for Makeself. The available ones are :
- --version : Prints the version number on stdout, then exits immediately
- --gzip : Use gzip for compression (is the default on platforms on which gzip is commonly available, like Linux)
- --bzip2 :
Use bzip2 instead of gzip for better compression. The bzip2 command
must be available in the command path. I recommend that you set the
prefix to something like '.bz2.run' for the archive, so that potential
users know that they'll need bzip2 to extract it.
- --compress :
Use the UNIX "compress" command to compress the data. This should be
the default on all platforms that don't have gzip available.
- --nocomp : Do not use any compression for the archive, which will then be an uncompressed TAR.
- --notemp :
The generated archive will not extract the files to a temporary
directory, but in a new directory created in the current directory. This
is better to distribute software packages that may extract and compile
by themselves (i.e. launch the compilation through the embedded script).
- --current : Files will be extracted to the current directory, instead of in a subdirectory. This option implies --notemp above.
- --follow :
Follow the symbolic links inside of the archive directory, i.e. store
the files that are being pointed to instead of the links themselves.
- --append (new in 2.1.x):
Append data to an existing archive, instead of creating a new one. In
this mode, the settings from the original archive are reused
(compression type, label, embedded script), and thus don't need to be
specified again on the command line.
- --header :
Makeself 2.0 uses a separate file to store the header stub, called
"makeself-header.sh". By default, it is assumed that it is stored in the
same location as makeself.sh. This option can be used to specify its
actual location if it is stored someplace else.
- --copy :
Upon extraction, the archive will first extract itself to a temporary
directory. The main application of this is to allow self-contained
installers stored in a Makeself archive on a CD, when the installer
program will later need to unmount the CD and allow a new one to be
inserted. This prevents "Filesystem busy" errors for installers that
span multiple CDs.
- --nox11 : Disable the automatic spawning of a new terminal in X11.
- --nowait : When executed from a new X11 terminal, disable the user prompt at the end of the script execution.
- --nomd5 and --nocrc :
Disable the creation of a MD5 / CRC checksum for the archive. This
speeds up the extraction process if integrity checking is not necessary.
- --lsm file :
Provide and LSM file to makeself, that will be embedded in the
generated archive. LSM files are describing a software package in a way
that is easily parseable. The LSM entry can then be later retrieved
using the '-lsm' argument to the archive. An exemple of a LSM file is
provided with Makeself.
- archive_dir is the name of the directory that contains the files to be archived
- file_name is the name of the archive to be created
- label is an arbitrary text string describing the package. It will be displayed while extracting the files.
- startup_script is the command to be executed from within the
directory of extracted files. Thus, if you wish to execute a program
contain in this directory, you must prefix your command with "./". For
example, ./program will be fine. The script_args are additionnal arguments for this command.
阅读(704) | 评论(0) | 转发(0) |