天天看点

Linux后端开发-POSIX标准以及shell编程POSIX标准Linux常见系统调用shell脚本shell和shell脚本(shell script)shell种类第一个shell脚本变量输入

POSIX标准

就是定义了类Unix系统提供接口(系统API(应用程序和库之间的编程接口),shell命令)的标准,便于代码的移植.

除了API还有ABI

应用程序二进制接口

他是让一个可执行的文件可以在支持ABI标准的平台上运行

主流Unix都支持POSIX标准,但是不仅仅局限于Unix,简单的说市面上绝大部分系统为了兼容性都会支持.(这些不准确啊,只是个人理解,有兴趣了解详情还是查查比较好)

当然了,标准嘛一定会跟随时代的改变而改变,例如C/C++也会更新,新的标准.

Linux常见系统调用

文件I/O, 进程/线程, 进程间通信, 系统控制, 内存管理, 网络管理

这些在系统编程里,在搞.

shell脚本

其实这个东西吧,很纠结.可能很多时候不需要去写,但是需要能看懂.因为这是运维的工作.

但是能写脚本的语言太多了,shell,python,php,JS,lua等等.说python火吧,但是js(前端)和lua(游戏)的程度并不差,但是shell还是一些"前辈的"首选.这就很烦

shell和shell脚本(shell script)

shell是C写的一个程序,作用于用户和系统之间的沟通

shell脚本通过脚本语言写的一些指令,使繁琐的工作实现自动化(其实可以理解成就是一个批处理)

shell种类

默认的是bash(也是使用最多的),还有ash, ksh, csh(C风格), tcsh(csh的进化版), zsh(最牛的,也是最不好用的)

第一个shell脚本

python

Linux后端开发-POSIX标准以及shell编程POSIX标准Linux常见系统调用shell脚本shell和shell脚本(shell script)shell种类第一个shell脚本变量输入

 shell

Linux后端开发-POSIX标准以及shell编程POSIX标准Linux常见系统调用shell脚本shell和shell脚本(shell script)shell种类第一个shell脚本变量输入

python环境需要安装,网上收一下一堆.

#!/bin/python3, 约定的东西,告诉系统这个脚本需要什么解释器来执行.(shell的话就是#!/bin/bash)

文件名,python以xxx.py,shell就是xxx.sh

执行脚本

Linux后端开发-POSIX标准以及shell编程POSIX标准Linux常见系统调用shell脚本shell和shell脚本(shell script)shell种类第一个shell脚本变量输入

 ./hello.py就是作为可执行程序来解释脚本

python3 hello.py是使用解释器来解释脚本,这种可以不用写#!(写了也0作用)(不过只有那么一句,还是写一下吧)

脚本意思就是输出"hello world"

使用脚本创建文件

Linux后端开发-POSIX标准以及shell编程POSIX标准Linux常见系统调用shell脚本shell和shell脚本(shell script)shell种类第一个shell脚本变量输入

还可以使用python调用shell命令

Linux后端开发-POSIX标准以及shell编程POSIX标准Linux常见系统调用shell脚本shell和shell脚本(shell script)shell种类第一个shell脚本变量输入

res是一个变量,可以作为返回值查看命令结果

由此可见,还是shell的曲线很缓和,因为命令我们都已经很熟悉.但是这只是命令的堆积, 脚本同样需要设计也就需要变量和控制语句.

变量

Linux后端开发-POSIX标准以及shell编程POSIX标准Linux常见系统调用shell脚本shell和shell脚本(shell script)shell种类第一个shell脚本变量输入
Linux后端开发-POSIX标准以及shell编程POSIX标准Linux常见系统调用shell脚本shell和shell脚本(shell script)shell种类第一个shell脚本变量输入

 在shell中" '是有区别的,' 不能转义(\就是转义字符)

Linux后端开发-POSIX标准以及shell编程POSIX标准Linux常见系统调用shell脚本shell和shell脚本(shell script)shell种类第一个shell脚本变量输入

当shell命令作为变量时

Linux后端开发-POSIX标准以及shell编程POSIX标准Linux常见系统调用shell脚本shell和shell脚本(shell script)shell种类第一个shell脚本变量输入

正常写法不会显示命令

Linux后端开发-POSIX标准以及shell编程POSIX标准Linux常见系统调用shell脚本shell和shell脚本(shell script)shell种类第一个shell脚本变量输入

 我们需要反引号 ` `

Linux后端开发-POSIX标准以及shell编程POSIX标准Linux常见系统调用shell脚本shell和shell脚本(shell script)shell种类第一个shell脚本变量输入

 可能不是很清楚,就是在字符串两端 ~ 键上的那个

输入

Linux后端开发-POSIX标准以及shell编程POSIX标准Linux常见系统调用shell脚本shell和shell脚本(shell script)shell种类第一个shell脚本变量输入
Linux后端开发-POSIX标准以及shell编程POSIX标准Linux常见系统调用shell脚本shell和shell脚本(shell script)shell种类第一个shell脚本变量输入

shell中不常用的keyword

readonly 变量//定义一个只读的变量

unset 变量 删除一个变量

继续阅读