Shell 运行shell脚本的多种方法

shell脚本 无 阅读详情

详情地址:  运行shell脚本的多种方法 | 小步教程

Shell 运行shell脚本的多种方法

运行shell脚本文件可通过两类方法。

方法1:bash执行

语法

sh 文件

文件可使用相对路径或绝对路径。

示例

sh 01hello.sh

等价写法

sh /practise/c01base/01hello.sh

img

其它等价写法

/bin/sh 文件

为sh命令带上路径的完整写法。

/bin/bash 文件

sh为/bin/bash的链接,直接调用的写法。

bash 文件

会自动从/bin目录下找到bash程序。

上述各种写法最终调用/bin/bash程序来执行脚本。

推荐使用sh,最简单。

方式2:直接执行脚本文本

步骤1:设置文件为可执行

chmod +x 01-hello.sh

+x 表示文件添加可执行权限。

步骤2:运行文件

./文件名

如果文件名在当前目录,前面需要加./ 。

img

FAQ:报错

-bash: ./01-hello.sh: Permission denied?

程序如果没有设为可执行,会报这个错误。

img

FAQ:为什么不能直接用文件名,前面需要加./ ?

直接用文件名只会从/bin等系统目录找系统命令。习惯这个规则就好。

bash: 01-hello.sh: command not found...

img

小提示

当文件不可执行时,文件名我们无法按TAB自动完成。

FAQ:为什么执行时命令可以不用解释器?

因为我们在源文件通过#!/bin/bash指定了解释器,即使不指定,系统可能也会使用默认解释器。为保证代码的健壮性,要求加上此句。

通过绝对路径执行运行文件

sh 绝对路径

例

/practise/c01base/01-hello.sh

这里不需要./, ./只有在当前目录的文件才需要。

img

编码建议

如果一个文件频繁编辑代码进行测试,可以开两个连接,一个连接一直在vim界面,:w保存文件;另一个连接运行sh查看效果。

在Ubuntu上通过Wine完美运行企业微信的详细指南 本文提供了在Ubuntu系统上通过Wine兼容层安装和运行企业微信的详细教程。针对官方未提供Linux版本的痛点,指南推荐使用Ubuntu Kylin团队优化打包的Wine环境,通过简单的命令行步骤即可完成部署,并涵盖启动、中文输入法配置、文件管理等常见问题的解决方案,帮助用户实现高效、稳定的办公沟通。 阅读详情

相关推荐

windows11 远程桌面连接 通过代理连接RDP桌面报错 错误代码0x904 拓展错误代码0x7

打开windows Defender防火墙设置--允许应用通过防火墙更改设置--允许其他应用浏览--进入C:\WINDOWS\system32目录选择mstsc.exe进入C:\Windows\SysWOW64目录h'qmstsc.exe添加后列表里多了一个远程桌面连接,还有一个Remote Desktop Connection,配置网络权限后保存连接成功。

weixin_43978891的博客 1万+

执行shell脚本(.sh文件)的几种方法

然后进到shell脚本所在的文件夹,以下三条指令均可以执行。文件,可能因为权限问题不能执行,可以使用。

qq_44722189的博客 5548

麒麟和UOS系统编写桌面点击可执行文件

在桌面上创建一个快捷方式(.desktop 文件)来运行脚本。打开文本编辑器,创建一个新文件,如。这可以通过文本编辑器来完成。首先,确保您的脚本具有执行权限。现在,您应该可以双击桌面上的。保存此文件到桌面目录,例如,在桌面上创建一个快捷方式(文件来运行您的脚本了。使用图形界面或命令行给。现在您可以双击桌面上的。为您脚本的实际路径。是您脚本的实际路径。文件来运行您的脚本了。

u013934107的博客 7249

执行Shell脚本的4种方法

现在的/root/bin就不在环境变量PASH中的,所以必须加上 ./ 才可执行。总结:前三种方法执行shell脚本时都是在当前shell(称为父shell)开启一个子shell环境,此shell脚本就在这个子shell环境中执行,shell脚本执行完后子shell环境随即关闭,然后又回到父shell中。因为方法三是将hello.sh作为参数传给sh(bash)命令来执行的,这时不是hello.sh自己来执行,而是被人家调用执行,所以不要执行权限,那么不用指定bash路径自然也好理解了呀。

Guanguanju1的博客 1万+

电脑蓝牙与ESP32蓝牙连接,让电脑发现ESP32

让PC发现ESP32蓝牙

injre! injre~ 5446

ESP32蓝牙广播数据自定义指南:让你的设备更容易被手机发现

本文详细介绍了如何通过自定义ESP32蓝牙广播数据提升设备在手机端的可发现性。从广播数据结构、扫描响应优化到跨平台兼容性设置,提供了全面的技术指南和实战代码示例,帮助开发者解决智能硬件开发中的蓝牙连接难题。

weixin_29172201的博客 271

Shell编程——如何运行Shell脚本(在新进程中运行、在当前进程中运行)

以下内容源于C语言中文网的学习与整理,非原创,如有侵权请告知删除。运行Shell脚本以下有三种方法。归类一:在新进程中运行Shell脚本1、作为可执行程序2、作为解释器参数 归类二:在当前进程中运行Shell脚本3、使用source命令...

主要记录嵌入式学习与开发过程。 1万+

把群晖NAS变成游戏开发服务器:Perforce与虚幻引擎深度整合的5个关键配置(含.p4ignore模板)

本文详细介绍了如何将群晖NAS配置为游戏开发服务器,重点讲解了Perforce与虚幻引擎的深度整合。通过五个关键配置节点,包括用户权限架构、Workspace策略、资产同步优化、仓库清洁度保障和编辑器深度集成,帮助小型团队打造高效开发环境。文章还提供了实用的.p4ignore模板和优化技巧,显著提升开发效率。

weixin_30430677的博客 318

Shell脚本执行的几种方式

Shell脚本执行的几种方式: 1. sh/bash 脚本的相对路径/绝对路径 2. 脚本的相对路径/绝对路径(需要x权限) 3. source 脚本的相对路径/绝对路径 4. .空格脚本的相对路径/绝对路径 shell父子进程演示

stormkai的专栏 5109

GB28181 —— 1、Ubuntu20.04下使用ZLMediaKit+WVP搭建GB28181流媒体监控平台(连接带云台摄像机)

GB28181 —— Ubuntu20.04下使用ZLMediaKit+WVP搭建GB28181流媒体监控平台

5460

javascript 酷炫时钟

javascript 酷炫时钟

liuhao9999的博客 631

执行Shell脚本(多种方法)

上节我们编写了一个简单的 Shell 脚本,这节我们就让它运行起来。运行 Shell 脚本有两种方法,一种在新进程中运行,一种是在当前 Shell 进程中运行。 在新进程中运行 Shell 脚本 在新进程中运行 Shell 脚本有多种方法。 将 Shell 脚本作为程序运行 Shell 脚本也是一种解释执行的程序,可以在终端直接调用(需要使用 chmod 命令给 Shell 脚本加上执行权限),...

ScutKevinYzy的博客 1115

48-OpenCVSharp —-Cv2.MatchTemplate() 函数功能(模板匹配)详解

是 OpenCV 中一个常见且简单的模板匹配算法,适用于目标检测和图像识别中的静态场景。它的优点是易于理解和实现,但在面对旋转、尺度变化、复杂背景或光照变化等挑战时,效果可能大打折扣。在这些情况下,结合多尺度图像、特征匹配算法(如 SIFT、SURF、ORB 等)以及深度学习模型可以显著提高匹配的鲁棒性和精度。模板匹配仍然是一个非常基础但强大的工具,适用于一些简单的图像匹配任务。对于更加复杂和动态的图像识别任务,我们通常会使用其他更加复杂的算法或者深度学习模型来处理。

weixin_45590420的博客 4523

Linux中执行shell脚本的5种方法总结

Linux中执行shell脚本的4种方法总结,即在Linux中运行shell脚本的4种方法: 方法一:切换到shell脚本所在的目录(此时,称为工作目录)执行shell脚本: 复制代码代码如下: cd /data/shell ./hello.sh ./的意思是说在当前的工作目录下执行hello.sh。如果不加上./,bash可能会响应找到不到hello.sh的错误信息。因为目前的工...

心有猛虎细嗅蔷薇 4万+

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

【Linux】shell脚本实现多并发

情景 shell脚本的执行效率虽高,但当任务量巨大时仍然需要较长的时间,尤其是需要执行一大批的命令时。因为默认情况下,shell脚本中的命令是串行执行的。如果这些命令相互之间是独立的,则可以使用“并发”的方式执行这些命令,这样可以更好地利用系统资源,提升运行效率,缩短脚本执行的时间。如果命令相互之间存在交互,则情况就复杂了,那么不建议使用shell脚本来完成多线程的实现。 为了方便阐述,使用一段测试代码。在这段代码中,通过seq命令输出1到10,使用for...in语句产生一个执行10次的循环。每一次循

zclinux的博客 5585

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

执行shell脚本的几种方法

shell脚本不应该设置扩展名,要抛弃windows的习惯。除了在一些特殊情况下,可以为任何文件名。我倾向于不设扩展名,这样用的时候更象一个命令,如hello,而不必多个尾巴,如hello.sh。特殊情况就看什么软件来用这个script,比如在Solaris系统中的/etc/rcx.d目录下的script,带.sh扩展名和不带.sh扩展名调用时是有区别的。 Don't use extensions for your scripts. Executables shouldn't have extension

Superxgl的专栏 1562

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

Shell编程和Shell脚本

1,Shell 教程 Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言。 Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。 Ken Thompson 的 sh 是第一种 Unix Shell,Windows Explorer 是一个典型的图形界面 Shell。 Shell...

Wuli_Yunheng的博客 402

Groovy 脚本的多种运行方法

目录: groovyConsole 图形交互控制台 groovysh shell命令交互 通过IDE运行Groovy脚本 用命令行执行Groovy脚本 用Groovy创建Unix脚本 Groovy脚本是一些定义在文本文件中的语句和类。它和其他脚本语言的使用类似,它有多种方式可以运行。   详见:http://www.micmiu.com/lang/groovy/groovy-...

Michael 313

怎么正经的实现shell脚本单例运行?

来源:公众号【编程珠玑】作者:守望先生ID:shouwangxiansheng假设你的一个脚本已经在运行了,如果避免再次被执行呢?也就是如何实现单例运行?看起来可行的方法一个非常简单的思...

yeluoxiang的专栏 1400

shell运行html文件路径,shell 脚本执行和基础知识

当我们给予shell脚本执行的权限后,就可以测试程序了,假设shell脚本文件为hello.sh放在/root目录下。下面介绍几种在终端执行shell脚本的方法:1.切换到shell脚本所在的目录,执行:[[emailprotected] home]# cd /root/[[emailprotected] ~]# ./hello.shhello guys!welcome to my Blog:...

weixin_30209891的博客 814

创建和运行shell 脚本

本文介绍了Windows批处理文件和Ubuntu Shell脚本的创建与运行方法。在Windows中,批处理文件(.bat)可通过记事本编写命令并保存运行,常用于自动化任务。在Ubuntu中,Shell脚本(.sh)通过vim编辑,包含命令集合,可前台或后台运行。前台运行需赋予执行权限,后台运行可通过添加"&"符号、nohup命令、screen工具或systemd服务实现。文章还提供了K8S和Docker的学习资源链接,帮助读者扩展容器化技术知识。

2301_80384662的博客 1148

shell学习笔记2---执行Shell脚本(多种方法)

在新进程中运行 Shell 脚本 1) 将 Shell 脚本作为程序运行 切换到脚本所在位置(还要给脚本加上可执行权限) [mozhiyan@localhost demo]$ ./test.sh #执行脚本文件./表示当前目录,整条命令的意思是执行当前目录下的 test.sh 脚本。如果不写./,Linux会到系统路径(由 PATH 环境变量指定)下查找 test.sh...

weixin_30699465的博客 172

Linux执行shell脚本方式及区别&命令后台运行

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://4554480.blog.51cto.com/4544480/837006假设shell脚本文件为hello.sh放在/root目录下。下面介绍几种在终端执行shell脚本的方法:[root@localhost home]# cd /root/[root@localhost ~]#...

温攀峰的博客 1529

shell 脚本语言

用来声明脚本由什么shell解释,否则使用默认shell。

哦哦 会议中 669

shell --基本概念及脚本执行常用方法

Shell命令解释器是一种交互式的程序,用户可以通过它与操作系统的内核通信。它接收用户输入的命令,将这些命令翻译为操作系统可以理解的系统调用或操作,然后执行这些命令。

XINGXIN 885

ubant每30秒运行shell脚本_shell 脚本(Linux--ubuntu)

介绍1. Shell介绍(1)shell是一种命令语言,也是一个用 C 语言编写的程序 (命令解释器->“翻译官”)(2)作用:主要提供一个接口使用户与内核交互操作。(3)流程:接收用户输入的命令并且进行解析,然后将命令送入内核去执行 -> 最后将结果返回给用户。2.Shell常见类型名称来源比较sh (Bourne Shell)AT&T Bell实验室的Steve Bo...

weixin_39554434的博客 496
上一篇: Shell Hello
下一篇: Shell 注释
小步教程
博客等级 码龄15年 200粉丝 120原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值