ubuntu系统中 bash sh ./ source 的使用

转载自:ubuntu --- 运行.sh文件、编写.sh文件

https://www.cnblogs.com/carle-09/p/12582209.html  

 

1. 关于shell

Shell是什么?1分钟理解Shell的概念! http://c.biancheng.net/view/706.html

Shell 是一个应用程序,它连接了用户和 Linux 内核,让用户能够更加高效、安全、低成本地使用 Linux 内核,这就是 Shell 的本质。

 

#! /bin/sh
#! /bin/bash
#! /bin/csh
#! /usr/bin/env python

 

脚本文件的第一句就要用#! 告诉系统,用哪一种shell运行程序。

 

 2. sh bash ./ source 分别代表什么

例如创建一个test.sh

#! /bin/sh                     #    #! bin/bash --posix
id="hello world"               #    创建一个值为hello world的字符变量
num=99                         #    创建一个值为99的整型变量
echo "derek: $id ; num is : ${num} nd"         #打印出来,用不用大括号{}都可以,用大括号方便解释
注:sh 遵循POSIX规范:“当某行代码出错时,不继续往下解释”。bash 就算出错,也会继续向下执行。

用sh test.sh和bash test.sh都可以执行(这里皮一下很开心,后缀是啥没关系,.sh   .aaa  .derek啥都可以)

 

 如果用 ./test.derek 运行的话

需要赋予权限: chmod +x test.derek

用source运行的话:

source 会把变量上传到当前终端,因此:

 sh 与 bash执行完以后就结束了该shell

总的来说,sh ,bash ,./ source区别是:

sh是bash的不同模式,sh发生错误就停止了,bash继续往下运行;

./与bash一样,只是需要赋予权限chmod +x 文件名;

source与三个不同,运行完不销毁变量内存

 

3. chmod用法:

 https://www.runoob.com/linux/linux-comm-chmod.html

 

posted @   Derek_dhb  阅读(499)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示