bash及其特性(二)

变量类型:

环境变量、本地变量、位置变量、特殊变量

环境变量:

export VARNAME=VALUE

位置变量:

$1、$2,....

shift取消变量

特殊变量:

$?上一个命令的执行状态返回值

$#参数的个数

$*参数列表

程序执行,可能的返回值:

程序状态返回码(0-255)其中0是正确执行

条件测试类型:

整数测试、字符测试、文件测试

整数比较:

-eq:测试两个整数是否相等:比如$a -eq $b

-ne:测试两个整数是否不等

-gt:测试一个数是否大于另一个数

-lt:测试一个数是否小于另一个数

-ge:大于或等于

-le:小于或等于

命令间的逻辑关系:

&&、||

条件测试表达式:

[ expression ]、[[ expression ]]

条件判断:控制结构

if 判断条件;then

statement

.....

fi

shell中如何进行算术运算:

1、let c=$a+$b

2、$[算术运算表达式]

c=$[$a+$b]

3、$((算术运算表达式))

c=$(($a+$b))

4、expr算术运算表达式,表达式中各操作数及运算符之间要有空格,且命令引用

c=`expr $a + $b`

文件测试:

-e FILE:测试文件是否存在

-f FILE:测试文件是否为普通文件

-d FILE:测试指定路径是否为目录

-r FILE:测试当前用户对指定文件是否有读取权限

测试脚本是否有语法错误:

bash -n filename.sh

字符串的测试:

字符测试:

== 测试是否相等

-n string 测试指定字符串是否为空

-s string 测试字符串是否不空

例子:用户名是否跟基本用户组用户名一致?

if [ `id -n -u $1` == `id -n -g $1` ];then

echo "yiyang"

else

echo"no"

fi

组合测试条件

-a:与关系

-o:或关系

!:非关系

时间: 2024-08-07 04:02:23

bash及其特性(二)的相关文章

Linux bash基础特性二

shell脚本的组成部分 shebang 各种命令组合 编程变量种类 本地变量: 仅仅在当前的shell生效 环境变量: 在当前和子shell生效 局部变量: shell进程某代码片段 位置变量: $1,$2来表示,用与获取脚本接受的参数 特殊变量: 一些特殊变量 一.编程环境 特殊变量如下 $?:上一个命令的执行返回码 $#:参数个数 $*:参数 $0:命令本身 $@:所有参数 本地变量: name=’value’ 环境变量:export name=value,declare -x name=

Linux之bash shell特性

一.shell是什么? Shell 本身是一个用C语言编写的程序,它是用户使用Unix/Linux的桥梁,用户的大部分工作都是通过Shell完成的.Shell既是一种命令语言,又是一种程序设计语言.作为命令语言,它交互式地解释和执行用户输入的命令:作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支. 如图shell是一个应用程序,是用户管理应用程序的一个接口. 二.广义上shell的分类 GUI:图形用户界面 KDE,GNOME,XFCE CLI:

bash的特性(一)

一.Shell 说到bash,首先就必须先提一下shell.Shell是什么呢?Shell是一个C语言编写的给用户提供交互的接口程序.用户的大部分操作都是通过shell完成的. 广义上Shell主要分为两类: 1.GUI图形用户界面:主要有KDE.GNOME.XFCE等 2.CLI命令行界面:bash.zsh.fish.sh.csh.tcsh等.各个发行版主要使用bash. 二.bash的特性 (一)命令别名 在linux的使用和管理过程中,将会用到大量的命令,我们可以通过命令别名来避免一些常用

谢烟客---------Linux之Bash基础特性条件测试&&自定义退出状态码(6)

条件测试 判断某需求是否满足,需要由测试机制来实现. 根据命令的执行状态结果,表达不同的测试条件 1.根据id命令的执行状态结果,判断用户是否存在 [[email protected] ~]# id root uid=0(root) gid=0(root) groups=0(root) [[email protected] ~]# echo $? 0 [[email protected] ~]# id help id: help: no such user [[email protected] 

bash的特性总结

什么是bash:       shell作为用户与计算机内核交互的接口,是用户与计算机沟通的桥梁,而bash(borne again shell)是众多shell里面最为流行一种,bash作为众多shell里面的一种有着众多的特性,掌握bash的众多特性将会是我们今后学习linux必经之路.       首先介绍一下bash的特性之一       命令历史:这个特性是将用户之前执行过的命令保存到缓存当中,通过上下键以及history命令的特殊选项来方便用过顺利完成操作系统功能.键入不带任何选项的

5、自学——Linux的学习进度与任务【shell中bash的特性】

shell中bash的特性 shell中bash的特性 bash特性之一:命令行展开   把命令行的给定的一个特殊符号自动替换为别的字符串的机制 目录: 命令:cd [内置命令] 工作目录:当前所处的目录 cd:change directory(切换目录) cd 目标路径(不能是一个文件必须是一个目录) 所有从根起始的都是绝对路径:/文件名 基名:路径最后一个文件的名字  /x/y/z/m/n: 目标路径  /x/y/z/m: 是目录名或者路径名   两个命令: 获取路径的基名:   # bas

bash的特性

bash的特性 Bash (GNU Bourne-Again Shell) 是许多Linux发行版的默认Shell.事实上,还有许多传统UNIX上用的Shell,例如tcsh.csh.ash.bsh.ksh等等,Shell Script大致都类同,当您学会一种Shell以后,其它的Shell会很快就上手,大多数的时候,一个Shell Script通常可以在很多种Shell上使用 bash是大多数Linux系统以及Mac OS X默认的shell,它能运行于大多数类Unix风格的操作系统之上,甚至

Shell中bash的特性小结

Shell: 用户与操作系统之间完成交互式操作的一个接口程序,为用户提供简化了的操作:上世纪的70年代中期在贝尔实验室,Bourne位Unix开发了一个shell程序Bourne Shell,简称sh:Bill Joy:用C语言根据sh重新编写 C Shell,简称csh:躺床上为其衍生版:David Korn:集合cshhesh的优点研发的Korn Shell,简称ksh:GNU:GNU组织发现sh是比较好用的又进一步开发Borne Again Shell,简称bash:Linux系统中默认的

2017-11-5Linux基础知识(10)bash基础特性

在上一章中我们讲述了bash基础特性之命令补全和路径补全以及它的命令引用,以及讲了文件管理命令,例如:复制.移动和删除,然后我们也讲述了变量,主要围绕着存储格式.数据范围和参与运算.那么这次我们继续讲述bash的基础特性,这一次我们讲述的是文件的通配符和IO重定向等. 一.globbing:文件名通配 我们在查询某些文件的时候,通常是在该目录下进行查找,有的时候文件繁多,想找一些特定的文件就得从该目录下逐个匹配进行查找进行通配,如果没找到则显示为空,找到的话就在下面显示该匹配结果的文件或目录,那

linux下部分文件管理类基本命令汇总以及bash展开特性介绍

一.文件管理类基本命令 1.1.表格汇总 今天要讲解的命令如下表所示,按照外部命令和内建命令做基本划分: 内建命令列表: 命令名字 基本说明 file 检测文件类型 cd 改变shell的工作目录 dirs 显示目录堆栈信息 popd 从堆栈中移除目录 pushd 向堆栈中添加目录 外部命令列表: 命令名字 基本说明 ls 列出目录内容 tree 以"树状"格式列出目录内容 pwd 打印当前工作路径的名字(是一个绝对路径) echo 显示文本行 cat 连接文件内容,并打印到标准输出