从零开始学习Shell基础

5 篇文章 0 订阅

1.什么是编程?

程序:指令+数据

程序编程风格:

    过程式:以指令为中心,数据服务于指令
    对象式:以数据为中心,指令服务于数据
    
shell程序:提供了编程能力,解释执行

程序的执行方式:
    计算机:运行二进制指令
    编程语言:
        低级:汇编
        高级:
            编译:高级语言-->编译器-->目标代码
                C,C++,java
            解释:高级语言-->解释器-->机器代码
                shell,perl,python

2.编程类型

过程式编程:
    ①顺序执行
    ②循环执行
    ③选择执行
    
shell编程:过程式,解释执行

编程语言的基本结构:
    ①数据存储,变量,数组
    ②表达式
    ③语句

3.shell脚本

shell脚本:文本文件

shebang:
     #!/bin/bash
     #!/usr/bin/python
     #!/usr/bin/perl
    
magic number:魔数

运行脚本:
    ①给予执行权限,通过具体的文件路径指定文件执行
    ②运行解释器,将脚本作为解释器程序的参数运行

4.变量

命名的内存空间:
    
数据存储方式:ASCII
    字符
    数值:整型,浮点型
    
变量:变量类型
    作用:
        ①数据存储格式
        ②参与的运算
        ③表示的数据范围
            
    类型:
        字符
        数值:整型,浮点型
            
编程程序语言:
    强类型:
    弱类型:bash

5.逻辑运算

true 1,flase 0

    与:
        1 && 1 = 1
        1 && 0 = 0
        0 && 1 = 0
        0 && 0 = 0
    或:
        1 || 1 = 1
        1 || 0 = 1
        0 || 1 = 1
        0 || 0 = 0
    非:
        !1 = 0
        !0 = 1
    
短路运算
    
    与:第一个为0,结果必定为0
        第一个为1,第二个必须要参与运算
    或:第一个为1,结果必定为1
        第一个为0,第二个必须要参与运算

6.grep

linux文本处理三剑客

①grep:文本过滤(模式:pattern)工具
        grep,egrep,fgrep
②sed:stream editor,文本编辑工具
③awk:linux上的实现gawk,文本报告生成器

grep:Global search REgular expression and Print out the line

作用:文本搜索工具,根据用户指定的“模式”对目标文本逐行进行匹配检查;打印匹配到的行

模式:由正则表达式字符及文本字符所编写的过滤条件

REGEXP(正则表达式):由一类特殊字符及文本字符所编写的模式,其中有些字符不表示字面意义,而表示控制或通配的功能
    分两类:
        基本正则表达式:BRE
        扩展正则表达式:ERE
            grep -E,egrep
            
正则表达式引擎
grep [OPTIONS] PRTTERN [FILE...]
选项:
    --color=auto:对匹配到的文本着色显示
    -v:显示不能够被parrtern匹配到的行
    -i:忽略字符大小写
    -o:仅显示匹配到的字串
    -q:静默模式,不输出任何信息
    -A n:after,显示匹配行及后n行
    -B n:before,显示匹配行及前n行
    -C n:context,显示匹配行及前后各n行
    -E:匹配ERE,扩展正则表达式

7.正则表达式

基本正则表达式元字符
    字符匹配:
        .:匹配任意单个字符
        []:匹配指定范围内的任意单个字符
        [^]:匹配指定范围外的任意单个字符
    匹配次数
    字符锚定
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值