重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
小编给大家分享一下从shell脚本创建二进制文件的方法,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
创新互联专注于维西企业网站建设,成都响应式网站建设,成都商城网站开发。维西网站建设公司,为维西等地区提供建站服务。全流程按需网站开发,专业设计,全程项目跟踪,创新互联专业和态度为您提供的服务
在使用Linux系统时,我们都会使用许多命令。大多数命令以二进制格式在/bin、/sbin、/usr/bin、/usr/sbin等目录中可用。作为系统管理员,我们编写了许多shell脚本来完成一些任务或使它们自动化。
本文将介绍创建shell脚本的二进制文件,因为没有人可以看到脚本的源代码,我们可以将它们用作命令。要从脚本创建二进制文件,我们使用SHC编译器。
请按照以下步骤执行此操作。
步骤1:先决条件
首先,需要为SHC编译器安装所需的包。
对于Ubuntu,Debian和LinuxMint
$ sudo apt-get install libc6-dev
对于CentOS,RHEL和Fedora
$ sudo yum install glibc-devel
步骤2:下载并安装SHC
从SHC编译器的官方网页或使用以下命令下载最新的源代码,并在您的系统上提取。
$ cd / usr / src $ wget http://www.datsi.fi.upm.es/~frosal/sources/shc-3.8.9.tgz $ sudo tar xzf shc-3.8.9.tgz
现在编译系统上的SHC源代码并使用以下命令安装它。
$ cd shc-3.8.9 $ make $ make install
步骤3:创建shell脚本
让我们根据需求创建一个shell脚本,或者跳过这个步骤(如果已经创建了)。对于本文,我们已经创建了下面的示例脚本,它添加了命令行参数上给定的整数值,并显示了它们的总和。
vim script.sh
#!/bin/bash total=0 for i in $@; do if [ ! -z "${i##[0-9]*}" ]; then echo "Please enter numeric only" exit 1 fi total=$(($total + $i)) done if [ $total -eq 0 ]; then echo "Plesae execute script like: $0 10 20 30" exit 0 fi echo $total
步骤4:创建脚本的二进制文件
在这个阶段,我们已经安装了SHC编译器,并有一个名为script.sh的shell脚本。使用下面的命令创建脚本的二进制文件。
$ shc -T -f script.sh
上面的命令将在当前目录中创建两个文件。其中一个是script.sh.x.c,它是脚本中的C语言格式。第二个是script.sh.x,它将采用二进制格式。
步骤5:测试二进制脚本
如果试图打开二进制格式的脚本,将看到它不是可读的格式。
现在将该脚本移到/usr/bin目录下,以便在系统中的任何位置使用。同时从文件名中删除.sh.x。因此,它将以简单的名称实现。同时为所有人设置执行权限
$ mv script.sh.x / usr / bin / script $ chmod + x / usr / bin / script
现在从系统中的任何位置输入命令'script'。将看到与shell脚本相同的结果。
$ script 10 20 30 60
以上是从shell脚本创建二进制文件的方法的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!