77范文网 - 专业文章范例文档资料分享平台

linux+shell脚本语言基础知识

来源:网络收集 时间:2020-04-18 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

linux shell脚本语言基础知识

一.shell简介

Linux系统的shell作为操作系统的外壳,为用户提供使用操作系统的界

面,更确切的说,shell是用户与Linux操作系统沟通的桥梁。用户既可以输入命令执行,又可以利用 Shell脚本编程,完成更加复杂的操作。

shell是一个命令解释器,它从输入设备读取命令,再将其转为计算机可

以了解的指令,然后执行它。在linux中,shell又不仅是简单的命令解释器,而且是一个全功能的编程环境。

Linux的Shell种类众多,常见的有:Bourne Shell(/usr/bin/sh或/bin/sh)、Bourne Again Shell(/bin/bash)、C Shell(/usr/bin/csh)、K Shell

(/usr/bin/ksh)、Shell for Root(/sbin/sh),等等。不同的Shell语言的语法有所不同,所以不能交换使用。每种Shell都有其特色之处,基本上,掌握其中任何一种就足够了。通常用Bash,也就是Bourne Again Shell进行编程。

二.shell使用

1.建立和运行shell程序

shell脚本程序:按照一定的语法结构把若干linux命令组织在一起,是这

些命令按照我们的要求完成一定的功能。它可以进行类似程序的编写,并且不需要编译就能执行。(只需修改其权限)

像编写高级语言的程序一样,编写shell程序需要一个文本编辑器,如VI和VIM,通常使用VIM文本编辑器,支持更便利的插入模式。 首先使用VIM编辑器编辑一个hello.sh文件:

#!/bin/bash

#hello world example

echo \

这样,一个最简单的shell程序就编写完了。

第一行:#!说明hello.sh这个文件的类型的,这有点类似于Windows系统下的用不同的文件后缀来表示不同的文件类型,但又不完全相同。Linux系统根据#!及该字符串后面的信息确定该文件的类型。在#!之后是一个路径名,这个路径名指定了一个解释脚本中命令的程序。

第二行:“#hello world example”就是shell程序的注释,(但后面紧接着“!”号的除外)

第三行:echo(回显)语句的功能是把echo后面的字符串输出到标准输出中。 现在,建立和写好之后,那么该程序如何运行呢?

由于该脚本没有执行的权限,只需要修改其执行的权限即可,执行:chmod a+x hello.sh。然后输入命令:./hello.sh即可看到效果。

2.shell变量

变量是一个存储值的实体,可以是一个名字,或者一个特殊的值。shell可以创建,分配和删除变量。

(1)变量设置规则:

a.变量与变量内容以等号(=)来连接 b.等号两边不能直接接空格符

c.变量名称只能是英文字母与数字或下划线,但是数字不能是开头符 d.引用变量名用“$变量名”

#!/bin/bash

#hello world example a=\ echo $a

以上例子一样可以输出hello world。

e.若有空格符可以使用双引号或单引号将变量内容结合起来,但必须注意,双引号的特殊字符可以保有变量的特性,但是单引号内的特殊字符则仅为一般字符。

#name=\#name='$LOGNAME is hh' //$LOGNAME is hh

f.通常大写字符为系统预设变量,自行设定的变量可以使用小写字符

(2)取消变量:用unset 变量名

#!/bin/bash #hello world 例子 a=%unset a echo $a

以上例子将不会打印出任何东西。

3.shell特殊变量

$0 :执行的脚本的文件名 $1 :脚本文件的第一个参数名 $# :传递到脚本的参数个数

$* :以一个单字符串显示所有向脚本传递的参数 $$ :脚本运行的当前进程ID号

$? :显示最后命令的退出状态,0表示没有错误,其它值表示有错误 例子a.sh #!/bin/bash

echo \echo \echo \echo \echo $?

加权限后执行./a.sh hh mm gg 则打印 the file is ./a.sh the parameter is hh mm number of parameter is 3 all parameter is hh mm gg 0

4.常用shell内嵌命令

(1)echo:显示变量内容

(2)env:显示目前系统中主要的预设变量内容 (3)set:显示目前系统中全部的变量内容 (4)read:从键盘读入变量内容 (5)declare:声明变量内容

-a:定义为数组 array -f:定义为函数 function -i:定义为整数 integer -r:定义为“只读”

-x:定义为透过环境输出变量、 例子:

#!/bin/bash a=1+1

declare -i b=1+1 echo $a echo $b

执行后输出结果为 1+1

2

5.条件测试

在写shell脚本时,经常遇到的问题就是判断字符串是否相等,可能还要检查文件状态或进行数字测试,只有这些测试完成才能做下一步动作。 test命令就是用于测试字符串,文件状态和数字的.test命令两种格式: test condition 或 [ condition ]

使用方括号时,要注意在条件两边加上空格

三.shell脚本编程基础知识

1.shell基本运算符

(1)算术运算符

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库linux+shell脚本语言基础知识在线全文阅读。

linux+shell脚本语言基础知识.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/994615.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: