云计算学习路线教程大纲课件:Linux新手入门教程
admin
2023-02-28 14:21:01
0

云计算学习路线教程大纲课件,Linux新手入门教程讲解:

v> Shell编程之基础知识

No.1 Shell脚本的基本语法结构

第一行: “#!/usr/bin/env bash”叫做shebang, shell语法规定shell脚本文件第一行为整个文件的解释器

第二行: 为“#”开头的行为注释行默认不会被程序所读取, 用来说明文件及标定所属人员使用, 也可用来解释程序

第七行: 为格式化打印语句printf, printf可以把后面的“hello world”打印到指定的终端中, \n 为换行符

No.2 局部变量和全局变量及环境变量

所有的编程语言都利用变量来存放数据, 以备随后使用或修改. 和编译型语言不通的是, 大多数脚本语言不需要提前

声明变量的类型, 用到是什么类型就是什么类型, 而当我们想引用变量的时候在前面加上一个 $ 符号就可以访问到

该变量的值了. shell正常所设置的变量就是全局变量, 即便在函数体内部也是如此.

像其他编程语言一样变量的复制形式为 变量名 = 设置的值

[root@bavdu ~]# vim helloworld.sh

---.sh代表这个文件是个shell脚本,拓展名后缀,如果省略.sh则不易判断该文

件是否为shell脚本

  1. #!/usr/bin/env bash ---shebang蛇棒, 解释器, 翻译

  2. #

  3. Author: bavdu

  4. Email: bavduer@163.com

  5. Github: https://github.com/bavdu ---这就是注释, 你没看错

  6. Date: 2019//

  7. printf "hello world\n"

[root@bavdu ~]# sh helloworld.sh

hello world

[root@bavdu ~]# ./helloworld.sh

[root@bavdu ~]# vim variable_daemon01.sh

#!/usr/bin/env bash

#

Author: bavdu

Email: bavduer@163.com

Github: https://github.com/bavdu

Date: 2019//

fruit=apple # 将"apple"赋值给变量fruit

count=10

printf "We have $count ${fruit}(s)\n"

count=20相较于全局变量来说, 还有局部变量, 局部变量的定义需要用到local去声明.

shell也内置了一些变量, 用于存储经常用到的配置信息, 比如可用的打印机、搜索路径等,这些叫做环境变量, 在终端

中敲 env 命令即可看到系统中内置的环境变量了, 通常设置环境变量的地点为/etc/profifile 或 /etc/profifile.d/*.

printf "we have $count apples"

printf "we have $count apples"

printf "we have $count apples"

printf "we have $count apples"

printf "we have $count apples"

printf "we have $count apples"

printf "we have $count apples"

[root@bavdu ~]# sh variable_daemon01.sh

[root@bavdu ~]# vim variable_daemon02.sh

#!/usr/bin/env bash

#

Author: bavdu

Email: bavduer@163.com

Github: https://github.com/bavdu

Date: 2019//

hello() {

local VARIABLE="hello world"

printf "$VARIABLE\n"

}

hello

printf "$VARIABLE\n"

[root@bavdu shell_s]# vim /etc/profile

export BAVDU="Hello Bavdu."

[root@bavdu shell_s]# source /etc/profile

[root@bavdu shell_s]# vim variable_daemon03.sh

#!/usr/bin/env bash

#

Author: bavdu

Email: bavduer@163.com

Github: https://github.com/bavdu

Date: 2019//

printf "$BAVDU\n"

[root@bavdu shell_s]# sh variable_daemon03.sh

Hello Bavdu.

[root@bavdu shell_s]#

【Example】

[root@shell Downloads]# wget https://download.oracle.com/otn-shell中还有一些特殊的变量叫做位置变量, 位置变量可以让我们执行时增加相应的参数, 我们来看下:

在脚本中我们还会经常读取用户输入的变量所以还有个read关键字, 专门用来读取用户输入的数值或字符串, 从而赋

值给一个变量.

pub/java/jdk/12+33/312335d836a34c7c8bba9d963e26dc23/jdk-12_linux-x64_bin.tar.gz^C

[root@shell Downloads]# ls

jdk-12_linux-x64_bin.tar.gz program

[root@shell Downloads]# tar xf jdk-12_linux-x64_bin.tar.gz -C /usr/local/

[root@shell Downloads]# cd /usr/local/

[root@shell local]# ls

bin etc games include jdk-12 lib lib64 libexec sbin share src

[root@shell local]# mv jdk-12 java-12

[root@shell local]#

[root@shell local]# java -version

openjdk version "1.8.0_181"

OpenJDK Runtime Environment (build 1.8.0_181-b13)

OpenJDK 64-Bit Server VM (build 25.181-b13, mixed mode)

[root@shell local]#

[root@shell local]# vim /etc/profile

#------java env------#

export JAVA_HOME=/usr/local/java-12

export PATH=$JAVA_HOME/bin:$PATH

export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

#------java env------#

[root@shell local]# source /etc/profile

[root@shell local]#

[root@shell local]# java -version

java version "12" 2019-03-19

Java(TM) SE Runtime Environment (build 12+33)

Java HotSpot(TM) 64-Bit Server VM (build 12+33, mixed mode, sharing)

[root@bavdu shell_s]# vim variable_daemon04.sh

#!/usr/bin/env bash

#

Author: bavdu

Email: bavduer@163.com

Github: https://github.com/bavdu

Date: 2019//

printf "$1 $2 $3\n"

[root@bavdu shell_s]# sh variable_daemon04.sh bavdu is goodboy

bavdu is goodboy[root@bavdu shell_s]# vim variable_daemon05.sh

#!/usr/bin/env bash

#

Author: bavdu

Email: bavduer@163.com

Github: https://github.com/bavdu

Date: 2019//

read -p "Please input your variable: " varName

printf "$varName\n"

相关内容

热门资讯

悬崖秋千坠亡女孩头部两次被撞,... 5月3日下午,四川省华蓥市玛琉岩探险公园发生一起人员伤亡事故,游客刘某某(女)在体验瀑布秋千项目时受...
外交部:中美双方就特朗普总统访... 5月7日,外交部发言人林剑主持例行记者会。有记者就特朗普访华期间合作议题提问。对此,林剑表示,中美双...
女子在川西冰川4600米营地遇... 极目新闻记者 唐佳燕近日,多名驴友发布视频称,五一期间,四川省甘孜州中山峰冰塔林,一名女子在4600...
美的燃气热水器怎么样? 最佳回答 美的是国内小家电品牌中的老品牌了,成立至今已经有近五十年的发展史了,美的一直致力于国内小家...
德意油烟机质量怎么样,德意和方... 最佳回答 论整体,个人觉得方太更高: 1.外观大气、显档次,尤其安装一整套,视觉效果非常好; 2.买...
德意燃气灶为什么自动熄火 问题:德意燃气灶为什么自动熄火答案:可能是火孔被堵导致火焰烧不到热电偶,所以就会发生燃气灶自动熄火的...
德意燃气灶一会就熄火 这种情况原因有很多种,1、检查一下是不是感应针偏位了,或者是火盖没有放到位,如果是感应针偏位了。2、...
壁挂炉火焰感应针好坏判断 感应针就是一根针,用来感应火焰,感应针不能距离火焰太近,因为距离火焰越近温度就会越高,感应针就更容易...
“特朗普一搅,默茨雄心破灭” 【文/观察者网 王恺雯】一年前,新官上任的德国总理默茨誓言重振德国经济,恢复德国在欧洲的领导地位。然...
马斯克宣布解散xAI,把数据中... 当地时间 5 月 6 日,埃隆马斯克(Elon Musk)在同一天宣布了两件事:xAI 不再作为独立...