- 1、本文档共22页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
linuxshell
一、学习目标
摆脱图形化和鼠标束缚,采用命令行模式,点点没有命令更强大
不同的Linux采用不同的图形化操作界面,但shell命令行一致
shell脚本实际上就是linux命令和脚本的组合,可以更加熟练地使用咱们的linux命令
shell脚本可以自动化执行任务或部署环境
二、课程安排
shell的背景介绍
shell基础
变量定义
输入输出
shell数据重定向
程序结构(分支、循环)
shell函数
自动化部署
第一天
回顾:
Linux命令:cp/mv/tar/ls/unzip/rm/rmdir/mkdir/touch/ls/pwd/chmod/chgrp/chown/ps/grep/du/df/top/vmstat/vi
一、shell背景介绍
SHEll的本质上是一段应用程序,它使得用户和操作系统可以交互,是用户和操作系统的中介者。
Shell基本上是一个命令解释器,类似于DOS下的command。它接收用户命令(如ls等),然后调用相应的应用程序。较为通用的shell有标准的Bourneshell(sh)和Cshell(csh)。
使用env查看环境变量中使用的是哪个bash
其中Bashshell最简洁快速,所以我们的课程学习呢使用bashshell,除了最主要的交互功能,还提供了hsitory记忆功能和Tab补全功能。
History功能记录打开终端后输入的所有内容Historyfile(可用此命令导出所有的输入记录)Tab功能—补全
Shell脚本是一种解释型的语言(说明),也称命令文件,即由Linux命令组成。
C语言编译链接型。
–*.c--?*.obj--?*.exe
一次编译,随处执行
Java、python编译解释型
*.java---?*.class-?字节码(jdk中的jvm和javac)Shell脚本解释每一句话
解释型,不用编译
二、变量
注意:
注释 # ---不管什么语言请加注释,在shell中尤其重要,因为shell脚本可读性是很差的请使用shell注释。
空格在shell脚本中空格字符是一个非常特殊的分割字符不像其他语言忽略,不能多写,也不能少些
定义和赋值变量名=变量值
注:等号右边一串字符数值可以是命令
a=‘hello’/a=hellob=`date`---反单引号
引用
$变量名a=`uname-r`
Version=$(a)显示linux版本号
注:
=号两侧不能有空格 name=zhangsan
变量名只能为数字、字母、下划线,数字不能开头
变量内容若有空格可以使用双引号或单引号将变量内容结合起来
Var=?langis$LANG?Var=‘langis$LANG’
双引号内的特殊字符如$等保持原本的特性
单引号内的特殊字符如$等仅为一般字符(纯文本)
使用转义字符?\?可将$,\,空格符,!等变成一般字符
var=?\$?
约定:通常大写字符为系统默认变量,自行设置的变量使用小写字符,方便判断
追加变量
PATH=$PATH:/bin/sh
显示格式:
1、Echo${变量名}–建议使用
2、echo$变量名
显示用户所有变量set
显示系统变量env
释放变量unset变量名unsetvar
设置系统环境变量
export变量名
将自定义的用户变量变为系统变量,即可用env查看该系统变量
小结:变量的用法
三、输入输出
输入---read
read变量名1变量名2---变量名可以单个或多个readab---变量之间用空格隔开
注:
1)如果变量名只有一个,则将所有的输入内容都赋给该变量举例readname1
2)如果输入的值多于变量个数,多余的值赋给最后一个变量举例readname1name2
3)read–p?提示信息?变量名 --(带有提示信息的输入)
输出---echoecho${变量名}
echo–e使转义字符生效使用\表示转义
\t跳格\n换行举例
echo–e?hello\ttesting?
echo–e?hello\ttesting?
shell脚本开头:#/bin/bash或#/bin/sh练习1:计算一下/etc目录下有多少个文件?分析:CdPwdWc|管道
第一步:vi新建的脚本名脚本后缀名是sh(关于后缀名的解释windows下和linux下的不同)
第二步:编写脚本
#!/bin/sh
#!/bin/sh
Pwd
cd/etc
您可能关注的文档
- JS21 WebSphere 测试报告 V50分析和总结.docx
- JSP分析和总结分析和总结.docx
- jsp基本语法实验.docx
- jsp四种范围小结.docx
- JVM内存结构问题.docx
- JW06M11鉴定测试报告模板.docx
- JW06M13验收测试报告模板.docx
- JW06M14缺陷报告封页.docx
- JW06M16测试计划模板.docx
- JW06M19确认测试报告模板.docx
- 2021-2022学年湖南省常德市安乡县四年级上学期期中语文真题及答案.pdf
- 2023-2024学年河南省南阳市社旗县四年级上学期期中数学真题及答案.pdf
- 2022-2023学年云南省曲靖市四年级下学期期末数学真题及答案.pdf
- 2021-2022学年河南省周口市鹿邑县二年级下册月考语文真题及答案.pdf
- 2018年河南焦作解放区教师招聘考试真题及答案.pdf
- 2019年江西公务员行测考试真题及答案-乡镇.pdf
- 2019中国石油报社应届高校毕业生招聘试题及答案解析.pdf
- 光大银行招聘应届毕业生能力素质测试笔试真题及答案.pdf
- 2024年广西百色教师招聘考试模拟题及答案.pdf
- 2021-2022学年浙江绍兴诸暨市五年级上册语文期末试卷及答案.pdf
文档评论(0)