Linux目录结构
Linux目录结构
linux中ls目录结构解释系统启动必须:
/boot:存放的启动Linux 时使用的内核文件,包括连接文件以及镜像文件。
/etc:存放所有的系统需要的配置文件和子目录列表,更改目录下的文件可能会导致系统不能启动。
/lib:存放基本代码库(比如c++库),其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库。
/sys: 这是linux2.6内核的一个很大的变化。该目录下安装了2.6内核中新出现的一个文件系统 sysfs 。sysfs文件系统集成了下面3种文件系统的信息:针对进程信息的proc文件系统、针对设备的devfs文件系统以及针对伪终端的devpts文件系统。该文件系统是内核设备树的一个直观反映。当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中
指令集合:
/bin:存放着最常用的程序和指令
/sbin:只有系统管理员能使用的程序和指令。
外部文件管理:
/dev :Device(设备)的缩写, 存放的是Linux的外部设备。注意:在Linux中访问设备和访问文件的方式是相同的。
/me ...
Axios语法
AXIOSAxios 是一个基于 promise 的 HTTP 库,可以用在浏览器和 node.js 中,向服务器发送AJAX请求进行数据交换
安装使用 npm:
1$ npm install axios
使用 bower:
1$ bower install axios
使用 cdn:
1<script src="https://cdn.bootcdn.net/ajax/libs/axios/0.21.1/axios.min.js"></script>
基本使用默认发送1234<script> axios({url:'https://www.fastmock.site/mock/a62b6007be40808b2edb8a8a3fb54c6a/api/book'}) .then(res =>{ console.log(res.data.data.list);})</script>
使用get发送无参请求1234<scr ...
Flow.js
Flow
参考文献:https://www.cnblogs.com/zhuzhenwei918/p/7150762.html
最全的手册:https://www.saltycrane.com/cheat-sheets/flow-type/latest/#builtins
Flow.js是FaceBook发布的开源Javascript静态类型检查器。他给JavaScript提供了静态类型来提高开发人员的生产力和代码质量。
12//查看全局安装的npm包npm list -g --depth 0
初始化1234567891011121314// 第一步 安装初始化package.json文件yarn init --yes// 第二步 安装flow依赖包yarn add flow-bin --dev// 第三步 创建flow配置文件yarn flow init// 第四步 启动flow服务yarn flow start// 第五步 服务启动后,后续即可使用flow命令检查项目文件yarn flow// 停止flow服务yarn flow stop// 直接用flow check命令可以不启 ...
Redis - Python交互
先导Python导包进⼊虚拟环境py_django,联⽹安装包redis
pip install redis
如果pip不成功则用下面easy
easy_install redis
文件中调用模块引⼊模块
from redis import *
本章主要用的是 redis模块中的 StrictRedis对象
StrictRedis对象⽅法通过init创建对象,指定参数host、port与指定的服务器和端⼝连接,host默认为localhost,port默认为6379,db默认为0
语法:
1234# 标准写法sr = StrictRedis(host='localhost', port=6379, db=0)# 简写sr = StrictRedis()
根据不同的类型,拥有不同的实例⽅法可以调⽤,与redis命令对应,⽅法需要的参数与命令的参数⼀致
本文基于Redis配置完集成的前提下操作 未配置可前往配置哨兵
示例
前提是电脑或虚拟机的Redis得开启 不然无法访问
可以在 StrictRedis 对象中添加 decode_responses ...
Python协程
协程
协程是python个中另外一种实现多任务的方式。在一个线程中的某个函数,可以在任何地方保存当前函数的一些临时变量等信息,然后切换到另外一个函数中执行,注意不是通过调用函数的方式做到的,并且切换的次数以及什么时候再切换到原来的函数都由开发者自己确定
简单实现协程1234567891011121314151617181920212223import timedef work1(): while True: print('--111--') yield time.sleep(3) def work2(): while True: print('--222--') yield time.sleep(3) def main(): w1 = work1() w2 = work2() while True: next(w1) next(w2)if __name__ == '__ ...
Python多任务多进程
多任务多任务处理是指用户可以在同一时间内运行多个应用程序,每个应用程序被称作一个任务.
Linux、windows就是支持多任务的操作系统,比起单任务系统它的功能增强了许多。
多任务的执行方式
并发:在一段时间内交替去执行任务。
并行:指的是任务数小于等于cpu核数,即任务真的是一起执行的
多进程进程的概念一个正在运行的程序或者软件就是一个进程,它是操作系统进行资源分配的基本单位。
一个程序运行后至少有一个进程,一个进程默认有一个线程,进程里面可以创建多个线程,线程是依附在进程里面的,没有进程就没有线程。
进程的使用Python在 multiprocessing 模块下提供了Process老创建新进程;与Thread类似
使用Process进程也要两种方式:
以指定函数作为target, 创建Process对象即可创建新进程
继承Process类,重写它的run() 方法来创建进程类,程序创建Process子类的实例作为进程
Process进程类的说明
语法参数: Process( [group [, target [, name [, args [, kwargs ]]]])
...
你不知道的Array.from
Array.from可参考 MDN 里的 Array.from
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array/from
1234567891011121314var obj = { 0:1, 1:2, 2:3, length:3, // 1 length:4, // 2 length:0, // 3 push:[].push //可在对象中定义数组方法 };obj -> 伪类 ->类似于数组的一种伪类型 -> 不是JS类型var newArr = Array.from(obj);console.log(newArr);// 1: [1,2,3]; 2:[1,2,3,unfeined]; 3: []//length决定了Array.from最终返回的新数组的长度,剪裁掉或补齐 (undiefined)console.log ...
CSS3 - flex
FlexFlex是Flexible Box的缩写,意为”弹性布局”,用来为盒状模型提供最大的灵活性。
任何一个容器都可以指定为Flex布局。
123.box{ display:flex;}
容器的属性
flex-direction
flex-direction属性决定主轴的方向
1234567.box { flex-direction: row | row-reverse | column | column-reverse;}· row(默认值):主轴为水平方向,起点在左端。· row-reverse:主轴为水平方向,起点在右端。· column:主轴为垂直方向,起点在上沿。· column-reverse:主轴为垂直方向,起点在下沿。
flex-wrap
felx-warp属性是决定换行
123456.box{ flex-wrap: nowrap | wrap | wrap-reverse;}nowrap(默认):不换行。wrap:换行,第一行在上方。wrap-reverse:换行,第一行在下方。
flex-flow
...
AJAX
AJAX概念:Asynchronous JavaScript And XML 异步的JavaSrcipt和XML简说:Ajax通过在后台与服务器进行少量数据交换,使网页实现异步更新;
特点:可以实现页面无刷新更新数据,提高用户浏览网站应用的体验;
同步 or 异步
同步:客户端必须等待程序的响应;在等待的期间客户端不能做其他操作。
异步:客户端不需要等待程序的响应;在服务器处理请求的过程中,客户端可以进行其他的操作
实现方法1.创建核心对象
创建 XMLHttpRequest 对象
123var iable= new XMLHttpRequest();//老版本的IE5~6 使用ActiveX 对象: if 上述用不了用下述var iablet = new ActiveXObject('Microsoft.XMLHTTP')
2.建起连接
步骤:向服务器发送请求 ,接收服务器响应,处理数据
向服务器发送请求
12345678Xmlhttp.open('Get','textl.txt',true);//open(m ...
JS - Math.random()
JS - Math.random() 随机数1. Math.random() : 随机获取范围内的一个数 ( 精确到小数点后14位 )生成0~60间的数12// 语法: Math.random()\*m [表示生成0~m之间的随机数]Math.random() * 60
生成0~60间的整数1parseInt(Math.random()*60)
向下取整整数1Math.floor(Math.random()*(60+1))
生成1~60间的整数1Math.floor(Math.random()*60)+1
2. 表示生成两个数之间的随机数12// 语法: Math.random()*m+n [表示生成n~m+n之间的随机数]console.log(Math.random()*10+8); // 8~18
12// 语法: Math.random()*m-n [表示生成-n~m+n之间的随机数]console.log(Math.random()*10-8); // -8~2
12// 语法: Math.random()*m-m [表示生成-m~0之间的随机数]conso ...