云计算学习路线教程大纲课件,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

3. # Email: bavduer@163.com

4. # Github: ---这就是注释, 你没看错

5. # Date: 2019/**/**

6.

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:

# 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:

# 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:

# Date: 2019/**/**

printf "$BAVDU\n"

[root@bavdu shell_s]# sh variable_daemon03.sh

Hello Bavdu.

[root@bavdu shell_s]#

【Example】

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

在脚本中我们还会经常读取用户输入的变量所以还有个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:

# 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:

# Date: 2019/**/**

read -p "Please input your variable: " varName

printf "$varName\n"

linux课程内容知识脉络,云计算学习路线教程大纲课件:Linux新手入门教程相关推荐

  1. Windows学习总结(6)——MindManager新手入门教程

    2019独角兽企业重金招聘Python工程师标准>>> MindManager新手入门教程 MindManager是一款创造.管理和交流思想的思维导图软件,其直观清晰的可视化界面和强 ...

  2. 《童虎学习笔记》PostgreSQL超简单新手入门教程

    总目录:https://blog.csdn.net/tonghu_note/article/details/124333034 第1节 3分钟学会在linux下安装PostgreSQL 第2节 2分钟 ...

  3. 云计算学习路线和经典资料推荐

    hi,大家好,最近很多小伙伴叫我出一个云计算学习路线和推荐资料,那必须赶紧安排上.云计算可以说是当前的热门方向,各个大厂都在搞云计算(字节也加入云计算大家庭,以后跳槽有更多选择),尤其是云原生火热,至 ...

  4. mount: 未知的文件系统类型“vboxsf”_好程序员云计算学习路线教程大纲课件:Mount 挂载详解...

    好程序员云计算学习路线教程大纲课件:Mount 挂载详解: ====================================================================== ...

  5. unity ui 补间动画_杭州Unity游戏开发培训内容有哪些?学习路线是如何规划的?...

    现在Unity游戏开发行业越来越受到欢迎,但是想要找到适合自己的课程和学习方法却有些困难.很多刚开始接触Unity游戏开发且没有基础的同学,不知道该从哪里开始学,也不知道要学习什么内容.该怎么开始Un ...

  6. system.img解包打包工具_好程序员云计算学习路线分享文件打包及压缩

    好程序员云计算学习路线分享文件打包及压缩 好程序员 建议针对目录 Demo: 复制未打包的文件到远程主机 [root@yangs ~]# du -sh /etc 39M /etc [root@yang ...

  7. 云计算学习路线教程大纲课件:部署论坛系统Discuz

    云计算学习路线教程大纲课件:部署论坛系统Discuz: 一.基础环境[已完成] [root@apache ~]# sed -ri '/^SELINUX=/cSELINUX=disabled' /etc ...

  8. 云计算学习路线教程大纲课堂笔记:构建企业级WIKI及工单系统

    云计算学习路线教程大纲课堂笔记:构建企业级WIKI及工单系统: -Author: bavdu -Email: bavduer@163.com -Github: https://github.com/b ...

  9. 【我的Latex学习之路】转载自:E喵的LaTeX新手入门教程(1)准备篇

    E喵的LaTeX新手入门教程(1)准备篇 **声明:**本篇博客转载自E喵的LaTeX新手入门教程,具体的出处我也找不到了,网络上好多好多,觉得他写的不错,于是就作为自己入门的教程,摘抄至此,重新排版 ...

最新文章

  1. nvGRAPH API参考分析(一)
  2. c语言执行得不出答案,C语言这个答案为什么是b?
  3. shell脚本编写知识2
  4. windows10下编译dllib报错: ERROR: Failed building wheel for dlib
  5. 用命令行为MySQL设置/修改管理员密码
  6. CSS 实现文字、图片垂直对齐(vertical-align)
  7. Java加个书名编号约束条件_java 按照题目所给变量名称、类型和方法名称进行编程 求帮助...
  8. 匿名内部类和匿名类_匿名schanonymous
  9. 止欲知足,为获得幸福生活的根本法则之一
  10. html源码蔡,html基础代码详解
  11. java小程序之学生信息_java小程序之学生信息录入界面
  12. Tableau宣布退出中国市场,背后的原因细思恐极...
  13. UVALive - 6437题解
  14. jsp中input 隐藏的方法
  15. 格兰杰因果检验准备-平稳性检验-Eviews
  16. Excel使用VBA自动调整插入图片大小到单元格
  17. 解决:Unhandled exception in XX.exe: 0xc00000FD; Stack Overflow
  18. 借着谈转正感想的时机,再聊聊外企和互联网公司的工作体验
  19. from..import 语句
  20. redis常见问题及解决方案

热门文章

  1. R语言特征提取与特征选择
  2. php建模(php_uml) 和 Enterprise Architect 自动生成模型
  3. UI这样标注切图,再也不用加班了!
  4. vue3报错:找不到模块“element-plus”或其相应的类型说明
  5. 百度上传插件(webupload)单文件(单图片)上传设置
  6. 微分方程求解 matlab,4MATLAB常微分方程求解.ppt
  7. 推荐一波书单(多阅读,多思考,就会留住好奇心)
  8. java防止暴力破解用户名的5种常见方法
  9. 划重点 | 如何让App开发及运营更走心,并兼具不可复制性?
  10. 最适合微服务的7大编程语言