shell编程基础

0.谁需要学习 Shell 编程?

1.Linux运维工程师:编写Shell程序进行服务集群管理。
2.Python和JavaEE程序员:编写Shell脚本程序或者是服务器的维护,比如编写3一个定时备份数据库的脚本。
3.大数据程序员:编写Shell程序来管理集群。

1.什么是shell编程

Shell 是一个命令解释权,它为用户提供了一个向 Linux 内核发送请求以便运行程序界面系统级程序,用户可以用 Shell 来启动、挂起、停止甚至是编写一些程序。

2.shell编程特点

(1) Shell脚本支持变量、命令行参数、交 互式输入、函数模块、各种控制语句等高级编 程语言的特性。
(2)利用shell可以编写出功能非常复杂的脚 本程序,把大量的任务自动化,尤其是那些需 要输入大量命令而在执行过程中不太需要与用 户进行干预的系统管理任务。
(3)与可执行命令不同,shell脚本并不是二 进制可执行文件,而是以文本方式保存,由 shell进行解析执行的,不需要对代码进行编译。
本质上,shell 脚本(shell编程)是命令行 命令简单的组合到一个文件里面。Shell基本上 是一个命令解释器,它接收用户命令,然后调
用相应的应用程序

3.Shell程序创建

进入 Linux 终端,编写一个 Shell 脚本 hello.sh :

#!/bin/bash 
echo 'hello world!'

chmod +x hello.sh
./hello.sh
终端打印出 hello world!
说明:

  • #! 告诉系统这个脚本需要什么解释器来执行。
  • 文件扩展名 .sh 不是强制要求的。

4.函数定义

#!/bin/bash 
#filename:welcome
 first() 
{ 
echo "====================================" 
echo "Hello! Everyone! Welcome to the Linux world." 
echo "===================================="
 } 
second()
 {
 echo "**********************************************" 
} 
first 
second 
Second
first 

1.编写程序 2.添加执行权限 3.运行程
创建完/root/welcome文件后,使用如下命令执 行Shell程序

在这里插入图片描述

5.Shell程序的执行

执行Shell程序有如下3种方法:
(1)通过bash命令: bash [Shell程序文件名]
(2)通过输入重定向 bash< [Shell程序名]
(3)添加执行权限 chmod u+x shell程序名 程序名路径

6.Shell 变量

定义
Shell 变量分为系统变量和自定义变量。系统变量有 H O M E 、 HOME、 HOMEPWD、$USER等,显示当前 Shell 中所有变量:set 。
变量名可以由字母、数字、下划线组成,不能以数字开头。
基本语法

  • 定义变量:变量名=变量值,等号两侧不能有空格,变量名一般习惯用大写。
  • 删除变量:unset 变量名 。 声明静态变量:readonly
    变量名,静态变量不能unset。 使用变量:$变量名

将命令返回值赋给变量(重点)

A=ls 反引号,执行里面的命令
A=$(ls) 等价于反引号

6.常用的字符串比较符号如下:

=:两个字符串是否相同,相同则为“是”。
!=:两个字符串是否不同,不同则为“是”
-n:字符串的长度是否大于0,大于0则为“是”
-z:字符串的长度是否等于0,如果等于0则为“是”

7.常用的数字比较符号如下:

-eq:两个数值相等
-ge:第一个数大于等于第二个数
-le:第一个数小于等于第二个数
-ne:两个数值不相等
-gt:第一个数大于第二个数
-lt:第一个数小于第二个数

8.shell脚本支持的控制结构:

  • if-then-else
  • •case
  • •for
  • •while
  • •until

if-then-else实例

使用if-then-else语句创建一个根据输入 的分数判断分数是否及格的Shell程序。

 #! /bin/bash
#filename:score
echo -n "please input a score:"
read SCORE
echo "You input Score is $SCORE"
if [ $SCORE -ge 60 ];
then
echo -n "Congratulation!You Pass the 
examination。"
else
echo -n "Sorry !You Fail the examination!"
fi
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wen wef

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值