谢烟客---------Linux之Bash基础特性

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了谢烟客---------Linux之Bash基础特性相关的知识,希望对你有一定的参考价值。

Linux之哲学思想

    一切皆文件

    避免交互,实现Bash编程

    文本编程命令实现配置

    组合小程序完成复杂任务


总结

    过程式编程

    解释执行

    字符和数值存储的区别

    shebang -> cpu ->解释器

    数据类型

        变量类型,即为内部数据的类型


    bash

     过程式编程、解释执行

     变量的类型为:弱类型    


11)Bash编程

编程风格:过程式编程、对象式编程

        过程式编程:目的解决问题

            只考虑数据怎么组织

            指令组织数据

                为了完成复杂的任务

                     顺序执行:逐个运行任务

                    选择执行:有一个标准,只执行某些代码片段

                    循环执行:让某些代码片段重复执行N次

编程执行的方式

        编译执行:c,java 先翻译后执行:高级语言 --> 编译 --> 目标代码 --> 汇编 --> 二进制指令

         解释执行:shell,python,java 边翻译边执行,为了避免语境的错乱,先对程序进行语法检查后,都会进行翻译:解释型语言-->解释器-->目标代码

 

解释执行的特性

        纯文本魔数为一个指明解释器路径的代码

        由解释器执行源程序

        CPU上运行的为解释器,由解释器运行文本


魔数源码编译为二进制后,文件的前n个字节,用于判断可执行程序的格式

编程语言的结构

    数据存储:变量、数组

    表达式、语句


编程语言,为了使编程简洁

    操作系统提供库

    提供解释器


shell程序:

    过程式编程、解释执行


shell编程特性

    直接调用系统程序

    命令的堆砌

    严重依赖操作系统的环境


shell脚本的格式:

    必须有固定的格式:首行为魔数

    必须能读取$PATH的值,bash严重依赖PATH查找执行程序文件

运行脚本:

    1、给予权限、通过具体的路径指定文件执行

    2、直接解释执行,将脚本作为解释器程序的参数执行


12、变量

    变量名:用名字可引用的命令的内存空间,用名字即可调用事先划分的内存空间,内存空间的名字

    变量: 单个命令的内存空间


     程序 = 指令  + 数据

    数据可存储在变量、数组、列表、文件


    变量中存储的数据的类型

            字符型:用二进制位表示所有变化。例如 2^16表示所有汉字的5000种变化,这种规定有GBK2313,GB18030等。用2^8表示所有数字、字母、特殊字符的127种变化,美国规定的ASCII码表

            所以存储一个汉字时,用16位即可 ,存储一个数字时,用8位即可

            

            数值型

                整型,数值型数据例如110十进制转换为二进制数即可:110 --> 1101110 用7位即可

                浮点型

        *任何数据都能被这两种类型包含

            今天:字符用16 + 16位即可

            相当于UNIX元年的天数

        

            布尔型

                1:true bash中用 命令的状态结果的0表示 

                0:  false bash中用命令的状态结果的1-255表示

                逻辑运算:

                    与: 电路串联,同时为true结果为true,其他均为假。

                    或: 电路并联,一个为true结果为true,其他均为假。

                    非:电路的电磁感应,对运算的结果取反,非true为false. 非false为true

                短路运算:

                    与: 左侧为false,结果为false.左侧为true,第二个必须要参与运算

                    或: 第一个为true,结果为true.左侧为false,第十个必须要参与运算


运算:

     全为字符型: 10 + 110 = 10110

    全为数值型: 10 + 110 = 120


    如果变量中数据类型不统一,运算就会混乱


2)变量

变量的类型

    变量的类型即是变量中数据存储的类型


变量的作用:

    决定参与的运算

    决定变量的数据范围:整型为4个字节,32位,2^32=40多亿个数字

    

变量类型

    字符

    数值

        整型 

        浮点型


    强类型和弱类型

        强类型:必须申明变量为字符或数值型

        弱类型:不用事先申明变量为何种类型,shell

    

弱类型的特性

    统一存储为字符型

    如果需要用到运算时,会做自动的切换




本文出自 “Reading” 博客,谢绝转载!

以上是关于谢烟客---------Linux之Bash基础特性的主要内容,如果未能解决你的问题,请参考以下文章

谢烟客---------Linux之Bash基础特性配置文件

谢烟客---------Linux之Bash基础特性变量

谢烟客---------Linux之Bash基础特性变量

谢烟客---------Linux之Bash基础特性算术运算

谢烟客---------Linux之Bash基础特性条件测试&&自定义退出状态码

谢烟客---------Linux之bash编程