Linux(18)——提高命令行运行效率

目录

一、创建和执行 shell 脚本:

1、命令解释器:

2、执行 Bash Shell 脚本:

3、从 shell 脚本提供输出:

二、对特殊字符加引号:

1、反斜杠 (\):

2、单引号 ( ' ' ):

3、双引号 ( " " ):

三、循环结构:

1、for 循环:

2、Bash 脚本退出代码:

3、语法测试:

四、条件结构:

1、if/then :

2、if/then/else:

3、if/then/elif/then/else:


一、创建和执行 shell 脚本:

        借助 Bash shell 环境和脚本功能,可将 Linux 命令与 shell 脚本组合在一 起,从而轻松地解决重复而困难的实际问题,以提高处理日常任务的效率和准确性。

注:高级编辑器(如 vim 或 emacs)理解 Bash shell 语法并提供了高亮显示, 有助于识别常见错误。

1、命令解释器:

        脚本的第一行以符号 ' #! ' 开头,通常称为 she-bang 或 hash-bang。此符号是一个解释器指令,指示处理文件其余行所需的命令解释器和选项,如下图绿色方块处。

2、执行 Bash Shell 脚本:

        将脚本放在 shell 的 PATH 环境变量列出的目录中,即可直接通过输入脚本名来运行脚本。

3、从 shell 脚本提供输出:

        通过将文本作为参数传递给命令,echo 命令可显示任意文本。默认情况下,文本将在标准输出 ( STDOUT ) 上显示。

二、对特殊字符加引号:

        一些字符和词语对 Bash shell 具有特殊含义。有时我们希望使用这些字符的字面值,而非其特殊含义。

1、反斜杠 (\):

        反斜杠字符( \ )可去除紧跟在反斜杠后面单个字符的特殊含义。

2、单引号 ( ' ' ):

        单引号( ' ' )保留其括起的所有字符的字面含义。

3、双引号 ( " " ):

        双引号( " " )可用阻止globbong(文件名模式匹配)和 shell 扩展,但允许命令和变量替换

三、循环结构:

        系统管理员在日常活动中经常会遇到重复任务。

1、for 循环:

        for 循环是 Bash 提供的循环结构,结构如下。

for  VARIABLE  in  LIST;  do

COMMAND  VARIABLE

done

2、Bash 脚本退出代码:

        在处理完所有内容后,脚本会退出到调用它的进程。但是,有时可能需要在完成之前退出脚本,如,遇到错误条件。此时可在脚本中使用 exit 命令来实现这一目的。

        可使用整数参数(0 到 255 之间,表示退出代码)来执行 exit 命令。退出代码是进程完成后返回的代码,0 表示没有错误非零值均表示存在错误

3、语法测试:

(1)test 命令

        可通过 test 命令对脚本进行语法测试,以验证脚本的完整性。

(2)Bash 测试命令

        1)数字比较器:

注:gt 大于;ge 大于等于;lt 小于;le 小于等于;eq 等于。

        2)字符串比较:

注:= 或 == 表示相同;!= 表示不同。

        3)此外:

        还可判断字符串长度(z 为零;n 非零)、测试文件是否存在(-f 表示常规文件;-d 表示目录)等等。

四、条件结构:

1、if/then

        Bash 中最简单的条件结构是 if/then 结构,其语法如下。

if  <CONDITION>;  then

           <STATEMENT>

           ……

           <STATEMENT>

fi  

2、if/then/else

if/then 结构进一步扩展,以便能根据是否满足条件来采取不同的操作集合,结构如下。   

if  <CONDITION>;  then

           <STATEMENT>

           ……

           <STATEMENT>

else   

           <STATEMENT>

           ……

           <STATEMENT>

fi  

3、if/then/elif/then/else

        if/then/else 结构可以进一步扩展以测试多个条件,在满足某个条件时执行不同的操作集合,结构如下。

if  <CONDITION>;  then

           <STATEMENT>

           ……

           <STATEMENT>

elif  <CONDITION>;  then

           <STATEMENT>

           ……

           <STATEMENT>

else   

           <STATEMENT>

           ……

           <STATEMENT>

fi  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值