查看: 1161|回复: 0

[经验] shell脚本编写之本地脚本的编写和执行

[复制链接]

该用户从未签到

发表于 2024-8-28 10:13:24 | 显示全部楼层 |阅读模式
分享到:
本帖最后由 eefocus_4023189 于 2024-8-28 10:17 编辑

1、编写
建立一个myshell.sh文件,使用vim进行编辑。
elf@ubuntu:~/work/example/scrip_test$ vim myshell.sh
在该文件中,添加:
#!/bin/bash
echo "my first shell !"
5-1.png
其中#!/bin/bash用来指定使用的shell应用;echo "my first shell !"为脚本中编写的命令代码。
2、执行
在执行脚本时,脚本必须要有执行权限,首先给脚本赋予可执行权限:
elf@ubuntu:~/work/example/scrip_test$ sudo chmod a+x myshell.sh
执行脚本的方式一般有以下4种:
1)在脚本当前目录进行执行
直接使用./myshell.sh:
5-2.png
2)在绝对路径下执行
使用pwd命令查看当前路径,并使用绝对路径执行myshell.sh:
5-3.png
3)shell应用程序执行
shell脚本也可直接使用shell应用程序进行执行。我们前面说过,我们指定的shell应用为/bin/bash,所以,我们使用bash程序直接执行myshell.sh,或者/bin/bash myshell.sh:
5-4.png
如果使用shell应用进行执行,那么在脚本编写时,可以不用在第一行指定shell应用程序;此外,使用shell应用进行脚本执行时,脚本文件可以不被赋予可执行权限。
5-5.png
5-6.png
4)使用source或小数点(.)执行
使用source或 . (.后边有空格)执行,是在当前shell环境下读取并执行shell脚本,可以不被赋予执行权限。
5-7.png
与前几种执行方式不同的是,使用该方式执行后,脚本中定义的变量不会释放。例如,我在脚本中增加一个变量var=235,变量的定义具体细节,可以参考下一节。
#!/bin/bash
echo "my first shell !"
var=235
5-8.png
使用其他方式执行后,使用echo ${var}命令(关于变量的使用可以参考下一节)将变量值输出进行查看,如下图,可以看到没有输出var的值;然后再使用source. 或进行脚本执行,再次查看var变量的值,可以看到成功输出235,该方式执行脚本后的变量,没有释放,所以我们经常使用source来配置shell环境变量,后边讲开发板交叉编译工具设置时会使用到。


5-9.png
回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /4 下一条



手机版|小黑屋|与非网

GMT+8, 2024-11-18 01:49 , Processed in 0.116314 second(s), 16 queries , MemCache On.

ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

苏公网安备 32059002001037号

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.