如何让shell脚本变成可执行文件

mb60bb27dcabfcd      2022-02-17     220

关键词:

在本教程中介绍创建bash脚本并使用chmod命令使脚本可执行,无需脚本前面加上sh或bash命令就可以运行它。
创建脚本文件

第一步是使用以下命令创建一个扩展名为.sh的新文件:

[root@localhost ~]# touch hello_script.sh
写一个简单的脚本

使用vim编辑器打开新创建的文件,将以下bash脚本添加到文件中:

[root@localhost ~]# vim hello_script.sh 

下面是添加到文件中的脚本内容:

#!/bin/bash echo "Hello World"

编辑完,保存并退出。
如何让shell脚本变成可执行文件_Linux

执行Bash脚本

有两种方法可以运行bash文件。第一种是通过使用bash或sh命令。另一种将文件添加可执行权限,就可以直接运行。让我们运行以下命令以使用bash或sh命令执行bash脚本。

[root@localhost ~]# sh hello_script.sh 
Hello World
[root@localhost ~]# bash hello_script.sh 
Hello World

如何让shell脚本变成可执行文件_Linux_02

为脚本文件设置可执行权限

执行bash脚本的第二种方法是设置可执行权限。

[root@localhost ~]# chmod +x hello_script.sh 

如何让shell脚本变成可执行文件_Linux_03
可以看到hello_script.sh文件已经又x可执行权限了。

执行脚本

将可执行权限分配给脚本后,可以不带bash命令直接运行脚本,如下所示:

[root@localhost ~]# ./hello_script.sh 
Hello World

如何让shell脚本变成可执行文件_Linux_04

实例

在下面的示例中,我将编写并执行一个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

如何让shell脚本变成可执行文件_Linux_05
保存脚本文件,并退出。为脚本文件添加可执行权限:

[root@localhost ~]# chmod +x backup_script.sh 

运行脚本:

[root@localhost ~]# ./backup_script.sh 

如何让shell脚本变成可执行文件_Linux_06

总结

在本教程中介绍创建bash脚本并使用chmod命令使脚本可执行,无需脚本前面加上sh或bash命令就可以运行它。

如何将shell脚本变为可执行文件

方法一、可以使用gzexe命令直接将shell脚本变成可执行文件,命令为gzexe后面接要处理的shell文件名。加密后,用file查看文件类型已经为二进制文件了,执行都可以正常执行的。方法二、可以使用shc命令将shell脚本变为可执行文件... 查看详情

如何让 python 脚本作为可执行文件运行? [复制]

】如何让python脚本作为可执行文件运行?[复制]【英文标题】:Howtogetapythonscripttorunasanexecutable?[duplicate]【发布时间】:2019-01-1015:10:55【问题描述】:我想从命令行将我的python脚本作为可执行文件运行,通常当我执行bash脚本时,... 查看详情

如何在 pycharm 中调试包含可执行命令的 shell 脚本文件?

】如何在pycharm中调试包含可执行命令的shell脚本文件?【英文标题】:HowcanIdebugashellscriptfilecontaininganexecutablecommandinpycharm?【发布时间】:2021-07-1706:40:03【问题描述】:我有一个shell脚本文件,其中包含运行所需的参数Python文件。... 查看详情

mac上如何运行shell脚本(变为可执行文件)

...便方法网上都可以查到,方便大家学习这里就再分享一下如何将shell脚本制作为一个可执行文件在编写好一个shell脚本之后,保存为.sh文件接下来给shell脚本赋权限(以下两种选其一即可)1、chmoda+x你的shell文件名.sh2、chmod777你的s... 查看详情

shell脚本可以加密吗

...常保险的方法,但是能够满足一般的加密用途,可以隐蔽脚本中的密码等信息。它是使用系统自带的gzexe程序,它不但加密,同时压缩文件。使用方法:gzexefile.sh它会把原来没有加密的文件备份为file.sh~,同时file.sh即被变成加密文... 查看详情

如何用shell命令运行一个文件

...,一种是基于ELF文件格式的可执行文件,一种是基于Shell脚本格式的脚本文件。2、不管是可执行文件还是shell脚本,如果存在于PATH变量所指明的路径中,shell会自动寻找相应的可执行文件,用户只需要输入可执行文件名或者脚本名... 查看详情

linux下权限问题,如何让无root管理员权限的用户执行需root权限执行的脚本文件

...脚本文件供普通用户执行(不是管理员用户),那么应当如何做?当然其中不能让普通用户提权为root权限,什么使用sudo命令以及输入密码之类的。希望有能者回答。注意:不是如何提升普通用户的权限!而且是普通用户(不是... 查看详情

求助:如何在shell脚本中添加写日志的功能

参考技术A如何编写一个shell脚本本文结合大量实例阐述如何编写一个shell脚本。  为什么要进行shell编程  在Linux系统中,虽然有各种各样的图形化接口工具,但是sell仍然是一个非常灵活的工具。Shell不仅仅是命令的收集,而... 查看详情

ubuntu下执行shell脚本的问题

将一个脚本保存为带有扩展名的文件,如test.sh,在终端上输入:chmod+xtest.sh然后输入:test.sh终端显示:test.sh找不到命令但是,如果在终端上输入:./test.sh就能运行成功。另外,如果脚本文件没有扩展名的话,在终端上输入:./test或者test... 查看详情

如何让android系统或android应用执行shell脚本

android系统执行shell脚本,需要首先确认用户具有修改shell的权限,使用process来执行指令,如下代码:public void execShell(String cmd)     try              //权限设置            Process p = Runtime.getRuntime().exec("su");  //... 查看详情

如何运行shell脚本

编写好的shell脚本(如:test),可以采取两种方式进行运行:\x0d\x0a一、$shtest\x0d\x0a一般不采用这种调用方式,尤其不采用“sh<test”的调用方式,因为这种方式将禁止shell读取标准输入。\x0d\x0a也可以采用$ksht... 查看详情

将简单的python程序变成独立的windows可执行文件

...结果颜色。我使用Pygame来实现这一点。然后,我四处寻找如何将其变成一个简单的 查看详情

mac上实现一个简单的shell脚本

参考技术A如何实现一个简单的shell脚本呢?(这里用到的命令工具是iTerm2)直接上开始吧cd到目标文件夹:$cdtest新建脚本$touch123.sh双击123.sh,里面写入:mkdirshellcdshelltouch123.txt然后保存一下,此刻已经完成了一个简单的脚本(123.sh... 查看详情

如何让php执行shell

如何让php执行shell命令,或者shell脚本文件?参考技术Aphp给我们提供了system(),exec(),passthru()这三个函数来调用外部的命令.虽然这三个命令都能执行linux系统的shell命令,但是其实他们是有区别的:system()输出并返回最后一行shell... 查看详情

linux下权限问题,如何让无root管理员权限的用户执行需root权限执行的脚本文件

...脚本文件供普通用户执行(不是管理员用户),那么应当如何做?当然其中不能让普通用户提权为root权限,什么使用sudo命令以及输入密码之类的。希望有能者回答。注意:不是如何提升普通用户的权限!而且是普通用户(不是... 查看详情

怎么让android系统或android应用执行shell脚本

一、Android应用启动服务执行脚本1如何写服务和脚本在android源码根目录下有/device/tegatech/tegav2/init.rc文件相信大家对这个文件都不陌生(如果不明白就仔细研读下android启动流程)。如果在该脚本文件中添加诸如以下服务:serviceusb... 查看详情

如何让crontab执行脚本后并且把日志输出到另一个文件?

直接crontab-e添加执行脚本,然后给执行脚本加个重定向到文件就行了。例如:30 23 * * * /path/to/shell/script>>/path/to/log/file  #表示每晚的23:30执行/path/to/shell/script脚本,并且把结果重定向输出到/path/to/log/... 查看详情

shell变量和环境变量

...指令传给系统内核,中间的介质,可以是命令,也可以是脚本(逻辑判断等)Linux系统的shell分类,默认bash执行方式给shell脚本可执行权限,./去执行文件使用解释器执行shell脚本文件,就可以不用给文件赋予可执行权限shell变量分... 查看详情