linux-shell编程基础

1.1 什么是shell

Shell是一个命令解释器,它在操作系统的最外层,负责直接与用户对话,把用户的输入解释给操作系统,并处理各种各样的操作系统的输出结果,输出屏幕返回给用户。

交互的方式:从键盘输入命令,通过/bin/bash的解析,可以立即得到Shell的回应,一问一答的方式

非交互式:shell脚本 

1.2 为什么使用shell编程

作为一个合格的运维人员必须掌握一种或一种以上的脚本语言,shell编程则是实现Linux/UNIX系统管理及自动化运维所必备的重要工具,可以把繁琐重复的命令写到shell脚本中执行,节约时间,有效的提高运维人员的工作效率,减少不必要的重复工作时间。

1.3 系统中的shell

linux系统默认shell是bash

2.1 什么是变量

x+y=20     x=10  y=? 未知数(变量)

一个未知数,随时可以变化的量叫变量

2.2 变量的分类

只能在当前环境下使用,可以通过export命令临时把普通变量变为环境变量使用

1.大写

2.系统定义的

3.在大部分地方可以使用

$1   $2   $数字      $后数字是几代表shell脚本第几个参数

$#                         shell脚本中参数的个数

                             判断脚本的参数个数

$?                        上一个命令的执行结果(返回值)

                            0             执行正确

                            非0           执行失败

$0                        脚本文件名

为了防止脚本乱放,统一存放在/server/scripts/中

在执行bash脚本的时候,内核会根据”#!”后的解释器来确定该用那个程序解释这个脚本中的内容。

文件名称一定要有意义,方便看出是干嘛用的脚本,并且以.sh结尾

1、  放在统一目录下,方便查找

2、  书写脚本要用vim编辑,

批量删除

批量增加

1.进入批量编辑模式(可视块)esc下ctrl+v

2.选择 批量增加的范围

3.按 shift + i 进行修改

4.按esc 退出等等

3、 脚本文件名称以.sh结束

4、 脚本开头一定要指定解释器

5、 脚本中#代表注释,#后的内容不会执行,不用的命令等可以用#注释掉,脚本中尽量不要出现中文注释以免出现因字符集不同产生乱码

6、 代码符号书写规范

    1.成对的符号一定要都写出来再添加内容,避免遗忘漏写;如 “” ” []等

     2.流程控制语句一次书写完,再添加内容;(if 条件 ; then  内容;fi)

       3.书写的代码符号都是英文输入法格式

       4.通过缩进让代码易读

书写一个计算器脚本

4.1 数字计算方法

awk -v变量=赋值       变量名称自己定义

执行脚本

4.2 通过read 交互式

read交互式赋予变量内容

read -p “提示信息:”  变量名字

read -p “提示信息:”  p

执行之后会把输入的信息存放在变量中

执行脚本

4.3 条件表达式  if

[ -d /data ]

[ -f /data ]          

注意格式:[空格-f /data空格]   []里面两端必须有空格,中间写内容

格式: if [ 条件 ];then

        命令

 

1、判断脚本的参数个数,如果不是2则提示请输入两个数字

2、 给计算器(参数传递)增加一个条件

判断脚本的参数个数,

如果不是2则

提示请输入两个数字

3、执行脚本

格式: if [ 条件 ];then

        命令

             else

          命令

 

1、comp.sh输入两个数字:

1.如果n1大于n2

输出 n1 > n2

2.如果n1不大于n2

输出 n1 <= n2

2、执行脚本

原文链接:https://www.cnblogs.com/zeq912/p/9501915.html

原创文章,作者:优速盾-小U,如若转载,请注明出处:https://www.cdnb.net/bbs/archives/32803

(0)
优速盾-小U的头像优速盾-小U
上一篇 2025年10月23日 22:05
下一篇 2025年10月24日 15:21

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

优速盾注册领取大礼包www.cdnb.net
/sitemap.xml