linux shell基本用法

上一章主要简单的介绍了一个vim编辑器的一些用法,有人就想了啊,我们学习vim编辑器的主要目是什么呢。哈哈哈,后面的博文就会来向大家介绍一下个人认为Linux系统里比较重要的一部分内容,shell编程。

讲起shell有人就会想了,什么是shell呢?其实我们可以将shell理解为终端介绍器,是人与计算机硬件的翻译官,它作为用户与Linux系统通信的媒介,除了能够支持各种变量与参数外还支持一下循环,判断,高级分支等。

其实呢当用户将Linux命令依次写入一个文件中就算是一个简单的shell脚本了。现在博主来写一个显示工作路径并显示该路径下所有文件的脚本。

#!/bin/bash
pwd
ls -al

执行该脚本

 看就可以了成功执行了,

其实shell脚本的名称是可以自定义设置的,但是我们一般为了避免和普通文件冲突一般会在后缀加上.sh,以示这是一个脚本文件,在上面的脚本文件中我们可以看到第一行"#!"这是告诉系统是用那种shell解释器来执行脚本的,要是用户需要在脚本中打上备注可以使用#即可,我们在执行脚本时可用bash 加文件名称,也可以直接输入路径执行文件 ./ 文件名称。若要执行的脚本不在当前目录则可以bash /root/weijia.sh直接写入文件路径即可。

但是,像上面的脚本都是只能执行预先输入的命令这样未免有点太过死板了,其实把Linux系统预先以及想到了这些,已经内置了用户接受参数的变量。$0对应的是当前脚本的名称,$#对应的是总共有几个参数,$*对应的是所有位置的参数能够打印出所有参数,$?对应的是上次命令的返回值,这个变量是经常要用到的。其余位置的参数值分别用$1,$2...........代替。

判断用户参数

shell脚本中判断表达式是否成立,成立则返回数字0,否则则返回其他的随机数值。测试语句的格式如下所示[ 条件表达式 ]

按照测试对象来划分,条件测试语句一共分为四种。

文件测试语句:

逻辑测试语句:

整数值比较语句;

字符串比较语句;

文件测试语句是指用指定的条件来判断文件是否存在或权限是否满足等情况的运算符。

-d------------------------------------------ 测试文件是否为目录类型

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

-f-------------------------------------------判断是否为一般文件

-r-----------------------------------------测试当前用户是否有权限读取

-w----------------------------------------测试当前用户是否有权限写入

-x----------------------------------------测试当前用户是否有权限执行

光看这些语句可能会感觉很抽象,下面请看博主演示。

这条语句的大致意思呢,就是判断该条文件是否为目录类型,然后显示上条语句的执行结果。结果显示1则为条件不成立。

逻辑测试语句

逻辑“与”运算符是$$-------------------它表示当前面命令执行成功后才会执行后面的命令

逻辑“或”运算符是||------------------------它表示前面的命令执行失败后才会执行后面的命令

逻辑"非“运算符是!---------------------它表示把条件测试中的判断取相反值。

整数值比较语句

-eq-------------------------------是否等于

-ne--------------------------------是否不等于

-gt---------------------------------是否大于

-lt----------------------------------是否小于

-le---------------------------------是否等于或者大于

-ge--------------------------------是否大于或者等于

字符串比较语句

=-------------------------------比较字符串内容是否相同

!=-----------------------------比较字符串内容是否不相同

-z-----------------------------判断字符串内容是否为空

Guess you like

Origin blog.csdn.net/HUJIANLAILE/article/details/105705227