如何让shell脚本变成可执行文件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何让shell脚本变成可执行文件相关的知识,希望对你有一定的参考价值。
参考技术A 在本教程中介绍创建bash 脚本 并使用chmod 命令 使 脚本 可执行,无需脚本前面加上sh或bash 命令 就可以运行它。创建脚本文件
第一步是使用以下命令创建一个扩展名为.sh的新文件:
[root@localhost ~]# touch hello_script.sh
写一个简单的脚本
使用vim编辑器打开新创建的文件,将以下bash脚本添加到文件中:
[root@localhost ~]# vim hello_script.sh
下面是添加到文件中的脚本内容:
#!/bin/bash echo "Hello World"
编辑完,保存并退出。
执行Bash脚本
有两种方法可以运行bash文件。第一种是通过使用bash或sh命令。另一种将文件添加可执行权限,就可以直接运行。让我们运行以下命令以使用bash或sh命令执行bash脚本。
[root@localhost ~]# sh hello_script.sh
Hello World
[root@localhost ~]# bash hello_script.sh
Hello World
为脚本文件设置可执行权限
执行bash脚本的第二种方法是设置可执行权限。
[root@localhost ~]# chmod +x hello_script.sh
可以看到hello_script.sh文件已经又x可执行权限了。
执行脚本
将可执行权限分配给脚本后,可以不带bash命令直接运行脚本,如下所示:
[root@localhost ~]# ./hello_script.sh
Hello World
实例
在下面的示例中,我将编写并执行一个bash脚本以从源目录到目标目录进行备份:
[root@localhost ~]# vim backup_script.sh
下面内容粘贴到backup_script.sh文件中。
#!/bin/bash
TIME=`date +%Y_%m_%d`
DESTINATION=/tmp/backup-$TIME.tar.gz
SOURCE=/var/log
tar -zcvf $DESTINATION $SOURCE
保存脚本文件,并退出。为脚本文件添加可执行权限:
[root@localhost ~]# chmod +x backup_script.sh
运行脚本:
[root@localhost ~]# ./backup_script.sh
总结
在本教程中介绍创建bash脚本并使用chmod命令使脚本可执行,无需脚本前面加上sh或bash命令就可以运行它。
如何将shell脚本变为可执行文件
方法一、可以使用gzexe命令直接将shell脚本变成可执行文件,命令为gzexe 后面接要处理的shell文件名。
加密后,用file查看文件类型已经为二进制文件了,执行都可以正常执行的。
方法二、可以使用shc命令将shell脚本变为可执行文件。
1、安装shc
2、加密脚本文件CFLAGS=-static shc -r -f t.sh
CFLAGS指明为static静态编译,因为默认生成的是动态库,在不同的系统可能运行不了。-r也是为了生成的脚本二进制可执行程序能在其它的电脑上运行,-f参数用于指明要编译的脚本文件。
3、正常执行加密后的脚本文件。
4、shc常用参数说明
-e date (指定过期日期)
-m message (指定过期提示的信息)
-f script_name(指定要编译的shell的路径及文件名)
-r Relax security. (可以在相同操作系统的不同系统中执行)
-v Verbose compilation(编译的详细情况)
给执行权限就可以了
./yourshell本回答被提问者和网友采纳 参考技术C chmod 777 ./helloworld.sh
以上是关于如何让shell脚本变成可执行文件的主要内容,如果未能解决你的问题,请参考以下文章