0什么是变量,什么是shell编程
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了0什么是变量,什么是shell编程相关的知识,希望对你有一定的参考价值。
shell编程:
编译器:也叫解释器
shell给我们提供另外一个功能:
编程语言:将人类的语言转变成机器可以理解的语言
机器语言(01代码),汇编语言(依然很低层,成长周期比较长,学习起来也比较困难)
高级语言(尽管如此,它也不是人类的语言,但是最接近人类的语言)
静态语言:
编译型语言(有程序开发环境,不需要借助额外的二进制程序,直接写代码,写完之后需要一个编译器,将代码放到编译器就可以交给硬件形成一个独立运行的程序,我们就把他叫做静态语言)
事先转换成可执行的格式
所需要的重要的一个特征:强类型(变量)
关键字:
执行之前就要完全转换,事先转换成可以执行的格式程序
像C,C++,JAVA,C#(不需要任何解释器,自我就能运行)
动态语言:解释型语言 on the fly
(一个代码我们程序员写完以后,他不需要转换成二进制格式,而是有一个解释器,解释一条,执行一条,也就是在执行以后在进行转换)
(通常)弱类型:边解释边执行
像php,SHELL,Python(非常流行的,面向对象的,很多游戏脚本都是用python),perl(早前流行的:读音:po(破))
bash:最易学,最容易上手的就是SHELL
如果能学好python就是如虎添翼,添加了很多翼。
perl面向过程的,虽然perl6加上了对象,但是现在由于各种原因也流行不起来
事实上很多脚本是python研发的,在学习学了多年的计算机,都没有学过python,所以学校学的是脱节的。
面向过程:相对开发小型的应用程序:shell,c
把编程着眼点主要在于问题解决的过程本身
面向对象:相对开发大型的应用程序:JAVA(纯面向对象语言),Python(纯面向对象语言),perl,c++
含义:把整个我们要实现的项目抽象一个个对象,并定义对象之间的动作,就是可发出的操作来完成的,所以这个更适合开发大型程序
不过任何工具都是双刃剑(菜刀可以杀人也可以切菜)
要想理解编程,必须要理解变量
变量(不断变化的量):是内存空间,命名的内容空间(就是不断变化的量,存储在某一个内存的存储空间,根据地址就可以找到这个)
内存是存址的存储单元
我们通过变量和内存地址相对应,所以我们看到的是变量,比如a,其实它对应的是一个内存的地址空间。
什么是脚本?
如何去写脚本:其实就是命令的堆砌,是按照实际需要,结合命令流程控制机制实现的源程序的脚本。
Linux只能识别ELF格式去执行的(也就是脚本的第一行必须是#!/bin/bash,bash是解释器,/bin/bash 是解释器路径),这样才能然一个ASCII格式的文本可以被执行
我们的文件几乎都是是ACISS格式的
所以我们想运行脚本文件,必须是在文件的第一行用
#!/bin/bash
(而后再出现的#就是注释的#(也就是当做有效的组成部分))
所以一执行这个文件,就会读到第一行,就会用bash的编辑器去运行
并且要知道shell脚本的文件要用.sh后缀,就像是本地仓库要用.repo一样
以上是关于0什么是变量,什么是shell编程的主要内容,如果未能解决你的问题,请参考以下文章