Linux之哲学思想

一切皆文件

避免交互,实现Bash编程

文本编程命令实现配置

组合小程序完成复杂任务

总结

过程式编程

对象式编程

编译执行

解释执行

程序的组成

数据可存储的位置

数据类型的字符和数值存储的区别

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

bash

格式:shebang -> cpu ->解释器

过程式编程、解释执行

变量的类型为:弱类型

变量类型的作用

11)Bash编程

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

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

以指令为中心组织数据,由指令决定数据组织。数据服务于指令,指令的堆积

为了完成复杂的任务

顺序执行:逐个运行任务

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

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

对象式编程

以数据为中心,组织指令

编程执行的方式

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

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


解释执行的特性

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

由解释器执行源程序

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

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

编程语言的结构

数据存储:变量、数组

表达式、语句

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

操作系统提供库

提供解释器

shell程序:

过程式编程、解释执行

shell编程特性

直接调用系统程序

命令的堆砌

严重依赖操作系统的环境

shell脚本的格式:

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

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

运行脚本:

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

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

2、变量

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

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

程序 = 指令  + 数据

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

变量中存储的数据的类型

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

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

数值型

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

浮点型 浮点数是数学中数的子集合,由一个纯小数乘上一个指数值来组成。在计算机内,其纯小数部分被称为浮点数的尾数,对非0值的浮点数,要求尾数的绝对值必须>=1/2,称满足这种表示要求的浮点数为规格化表示

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

今天:字符用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

弱类型的特性

统一存储为字符型

如果需要用到运算时,会隐式转换为数值型

转载于:https://blog.51cto.com/sonlich/1952295

谢烟客---------Linux之Bash基础特性(2)相关推荐

  1. 每个程序员都应该知道的Linux基础知识!全文4900字,没有耐心的不建议看 ——( Linux文件系统 + 系统管理类命令 + bash基础特性)

    文章目录 - Linux的文件系统 - LSB - FHS - 根文件系统 - 对根文件系统下目录的概述: /boot /bin /sbin /lib /lib64 /etc /home /root ...

  2. 红叶李之Linux bash 基础特性

    Linux系统管理之bash基础特性 1.补全 系统支持的shell: # cat /etc/shells当前系统默认shell:# echo $SHELL命令补全:给定的打头的字符串如果在系统中能够 ...

  3. linux文件系统及bash基础特性

    linux文件系统 一.根文件系统 linux被识别的第一个被称为根之间关联的文件系统叫做根文件系统(rootfs),其他分区要想被读到,需要挂载到根目录的某个挂载点(根的子目录)上.根文件系统至关重 ...

  4. 文件管理和用户管理命令以及bash基础特性

    文章目录 文件管理相关命令 常用的文件管理命令 常用的文件内容查看命令 其他常用基础命令 元数据 用户及用户组详解及其常用命令 用户 用户组 权限 特殊权限位 常用的用户(组)管理命令及权限管理命令 ...

  5. Linux bash 的基础特性

    Linux bash 基础特性 bash基础特性之一:命令历史 bash基础特性之二:命令或路径补全 bash基础特性之三:命令行展开 bash基础特性之四:命令的执行状态结果 bash基础特性之五: ...

  6. linux bash基本特性

    一.bash 基础特性 (1)命令历史的功能 history: 环境变量 HISTSIZE:命令历史记录的条数 HISTFILE: ~/.bash_history 每个用户都有自己独立的命令历史文件 ...

  7. Linux基础知识--2.Linux的文件系统和bash的基础特性(1)

    Linux基础知识--linux的文件系统和bash的基础特性 一.Linux文件系统: Linux文件系统中的文件是数据的集合,文件系统不仅包含着文件中的数据而且还有文件系统的结构,所有Linux ...

  8. Linux基础(2)-基础命令和bash的基础特性(1)

    基础命令 命令历史 命令历史的管理 登陆 shell 时,会读取命令历史文件中记录下的命令: ~/.bash_history . 登陆进 shell 后,新执行的命令只会记录在缓存中,这些命令会在用户 ...

  9. 第二周 Linux文件管理类命令及bash基本特性

    第二周 Linux文件管理类命令及bash基本特性 摘要 1.描述Linux上的文件管理类命令并详解. 2.描述Bash的工作特性. 3.描述文件的元数据信息详解. 4.描述命令别名的使用. 5.详解 ...

最新文章

  1. C# String部分方法的例子StringBuilder的简单介绍
  2. 计算机编程免费ppt,计算机编程与C概述课件.ppt
  3. Matlab拾零(to be continued)
  4. 厉害了,史上最 “污” 技术解读。。
  5. python制作自动回复脚本_python itchat实现微信自动回复的示例代码
  6. 淘汰率最高的腾讯产品面试题
  7. ARM交叉编译工具arm-linux-gcc安装
  8. java零碎总结---java实现截图并保存到本地
  9. CDH中hue的oozie调度流程shell
  10. 卷积运算和运算后特征图大小计算2
  11. 小米8手机android版本下载地址,小米手机8 MIUI 10稳定版完整包发布(附下载链接)...
  12. 左程云算法Day6 图
  13. 计算机无法找到输出设备,老司机搞定win10声音无法找到输入输出设置的解决方法...
  14. 输入工资,计算税后工资
  15. 面试:你印象最深的BUG,举个例子
  16. 遥感影像的比例尺和分辨率的关系
  17. pdf转图片,pdf转高清图片方法
  18. 通过Mybatis批量插入表数据
  19. 微新余微信号ivxinyu✅ 冒死偷拍,对所有人都有益,求扩散!!!
  20. osgEarth目标选择

热门文章

  1. 史记.饭岛爱列传(转)
  2. <binding>和<operation>元素
  3. 2019.7.9刷题统计
  4. Python 标准库 —— zipfile(读取 zip 文件)
  5. python各进制、字节串间的转换
  6. 整型(int)转时间格式字符串及页面long型转时间格式字符串
  7. 为备考二级C语言做的代码练习---辅导资料《C语言经典编程282例》--(1)
  8. LeetCode 解题报告索引
  9. 先装VS2008再装SQL2005的问题
  10. 选择性模糊及其算法的实现。