read

shell内建命令--Linux

|▌冷眼眸甩不掉的悲伤 提交于 2020-01-11 06:50:16
exec命令()取代当前shell find ./ -name "*.txt" -exec ls -al {} \; find ./ -name "*.txt" -exec rm -rf {} \; [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-asuNPUtM-1577971154085)(en-resource://database/3994:1)] export 使变量都能被子shell识别 majun@instance-zqtg07w6:~$ cat export.sh #!/bin/bash echo $var majun@instance-zqtg07w6:~$ bash export.sh #输出空白 majun@instance-zqtg07w6:~$ var = 100 majun@instance-zqtg07w6:~$ bash export.sh #输出空白 majun@instance-zqtg07w6:~$ export var = 100 majun@instance-zqtg07w6:~$ bash export.sh 100 kill命令(常用) #kill的信号代码有很多种,常用的三种 1 ( 原地重启 ) 、9(强行杀掉)、15(正常结束) kill -9 2935 kill -1 2915 kill -15

python文件操作

六月ゝ 毕业季﹏ 提交于 2020-01-11 03:29:17
Python实现文件的操作: 读写一个文件之前需要打开它: fileobj = open(filename, mode) open()调用参数的解释: * fileobj是open()返回的文件对象; * filename是该文件的字符串名; * mode是指明文件类型和操作的字符串 mode : * r 只读模式(默认) * w 只写模式(不可读,不存在则新创建;存在则重写新内容;) * a 追加模式(可读,不存在则新创建;存在则只追加内容;) "+" 表示同时读写某个文件: * r+ 可读写文件(可读;可写;可追加) * w+ 写读 * a+ 同a * b代表二进制文件 eg:写文件 conten = '''Beautiful is better than ugly.Explicit is better than implicit.Simple is better than complex.Complex is better than complicated.Flat is better than nested.'''fout = open("file.txt", "w")fout.write(conten)fout.close() 如果源字符串比较大,可以将数据进行分块,直到所有字符被写入: fout = open("file.txt", "w")size = len

read()方法返回值为什么是int

断了今生、忘了曾经 提交于 2020-01-10 06:01:10
read()方法返回值为什么是int A:read()方法读取的是一个字节,为什么返回是int,而不是byte? 因为字节输入流可以操作任意类型的文件,比如图片音频等,这些文件底层都是以二进制形式存储的。如果每次读取都返回byte,有可能在读到中间的时候遇到11111111,那么这11111111是byte类型的-1,我们的程序是遇到-1就会停止不读了,后面的数据就读不到了,所以在读取的时候用int类型接收。如果是11111111就会在其前面补上24个0凑足4个字节,那么byte类型的-1就会变成int类型的255了,这样就可以保证整个数据读完,而结束标记的-1就是int类型。 package com.heima.stream; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; public class Demo02_FileInputStream { /** * read()方法读取的是一个字节,为什么返回是int,而不是byte * * 00010100 00100100 01000001 11111111 0000000 * * 10000001 byte类型-1的原码 * 11111110 -1的反码 * 11111111

云服务器磁盘测试工具-iozone

安稳与你 提交于 2020-01-09 17:58:27
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 一般来说,购买一台云服务器,我们首先考虑的因素应该是性能,而不是价格。影响云服务器性能的因素很多,如cpu型号,核数,内存大小,内存类型,磁盘型号,带宽稳定性等,影响因素很多,此时做选择,最好能根据实际业务需求确定哪个因素影响更大。 本文主要从磁盘的角度,看看如何去测试磁盘性能。使用的工具是iozone,所属系统为linux。 Iozone是一个文件系统测试基准工具。可以测试不同的操作系统中文件系统的读写性能。可以通过 write, re-write, read, re-read, random read, random write, random mix, backwards read, record rewirte, strided read, fwrite, frewrite, fread, freread, mmap, async I/0 等不同的模式下的硬盘的性能。测试的时候请注意,设置的测试文件的大小一定要大过你的内存(最佳为内存的两倍大小),不然linux会给你的读写的内容进行缓存,会使数值非常不准确。 下载方式不细述,既可以下载源码包,也可下载编译好的RPM包,自行选择。以下是用法和分析介绍。 1.iozone -a iozone将在所有模式下进行测试,使用记录块从4k到16M

python(继承)

*爱你&永不变心* 提交于 2020-01-07 22:44:06
python中继承分为单继承或多继承。父类称为基类。 子类继承了父类的所有属性。 子类调用属性时,先在自己的属性中找,找不到才到父类属性中找。 # -*- coding: utf-8 -*- class Dad: '这个是父类' money=100 def __init__(self,name): print('父亲') self.name=name def Play(self): print('%s正在工作'%self.name) #单继承==>子类(父类) class Son(Dad): money = 2000 print(Dad.money) print(Son.money) son_1=Son('小明') son_1.Play() print(son_1.name) 子类和父类存在相同属性情况 # -*- coding: utf-8 -*- class Dad: '这个是父类' money=100 def __init__(self,name): print('父亲') self.name=name def Play(self): print('%s正在工作'%self.name) #单继承==>子类(父类) class Son(Dad): money = 2000 def __init__(self,name,age): self.name=name self.age

Unix IO模型

怎甘沉沦 提交于 2020-01-07 00:45:38
Unix下可用的IO模型有五种 [1] : 阻塞式IO 非阻塞式IO IO复用(select和poll) 信号驱动IO(SIGIO) 异步IO(POSIX的aio_系列函数) 下面介绍自己对前三种IO模型的理解,后面两种模型如果之后有机会接触到,再回来补充! 阻塞式IO 程序执行一个系统调用时,会进行休眠等待返回结果,不在执行之后的代码 比如服务器端以阻塞IO方式调用read()读取客户端发来的数据时,代码和流程如下所示: while(connSocket.read(buf, BUFFER_SZ) > 0){ // 1 // 处理接收到的数据 // 2 } 调用read()函数,由用户态切换到内核态,查看接收缓存区是否有数据,如果有数据,则将数据从内核拷贝到用户空间,否则等待对端发送数据,此时应用进程阻塞在1处,无法继续执行,直到read()返回 可见阻塞IO效率低,因为阻塞等待是在浪费进程所获得的执行机会,所以一般采用非阻塞方式编写服务器程序 注意:read()并不一定是阻塞的,取决于套接字是否是阻塞的 非阻塞式IO 非阻塞IO是系统调用时不会等待数据准备好才返回,而是立即返回,此时可以执行之后的程序,所以程序运行过程中没有进入休眠状态 比如以非阻塞方式调用read()读取对端发来数据的过程: for(;;){ len = connSocket.read(buf, BUFFER

大魔法师

旧巷老猫 提交于 2020-01-06 21:51:00
一、题目 点此看题 二、解法 很容易看出来是线段树打标记的题,但是标记的顺序就很恶心。 有一个很简洁的解法,就是把所有的修改操作看做矩阵乘法,标记也用矩阵维护,我们的值用一个 4 × 1 4\times1 4 × 1 的矩阵维护(设 A A A 是值, B B B 是操作矩阵,用 B × A B\times A B × A 更新值): A B C l e n \begin{matrix}A\\B\\C\\len\end{matrix} A B C l e n ​ 然后操作分别用下列矩阵维护(顺序是操作编号 1 − 6 1-6 1 − 6 ): 1 1 0 0 0 1 0 0 0 0 1 0 0 0 0 1 \begin{matrix}1&1&0&0\\0&1&0&0\\0&0&1&0\\0&0&0&1\end{matrix} 1 0 0 0 ​ 1 1 0 0 ​ 0 0 1 0 ​ 0 0 0 1 ​ 1 0 0 0 0 1 1 0 0 0 1 0 0 0 0 1 \begin{matrix}1&0&0&0\\0&1&1&0\\0&0&1&0\\0&0&0&1\end{matrix} 1 0 0 0 ​ 0 1 0 0 ​ 0 1 1 0 ​ 0 0 0 1 ​ 1 0 0 0 0 1 0 0 1 0 1 0 0 0 0 1 \begin{matrix}1&0&0&0\\0&1

day 08

时光总嘲笑我的痴心妄想 提交于 2020-01-05 23:13:15
day 08 1.文件操作的初识: f1 = open('d:\leilei.txt', encoding='utf-8',made='r')content = f1.read()print(content)f1.close() 代码解释: open 内置函数 ,open底层调用的是操作系统的接口。 f1,变量,f1,fh,file_handerler,f_h,文件句柄,对文件进行的任何操作,都通过文件句柄的方式 encoding:可以不写,不写参数,默认操作系统的默认编码 windows:gbk linux:utf-8 mac:utf-8 f1.close()关闭文件句柄 文件操作三部曲 1.打开文件 2.对文件句柄进行操作 3.关闭文件 路径分隔符产生的问题 在路径前加 r r'd:\leilei.txt' 文件操作的读 r,rb,r+,r+b四种模式 r:read()** read(n) resdline() readlines() for*** rb:操作的是非文本的文件。图片,视频,音频 # read 全部读取 **f = open('文件的读’,encoding = 'utf=8')content = f.read()print(content)f.close​#read(n) 按照字符读取f = open('文件的读',encoding = 'utf-8'

事务隔离级别

守給你的承諾、 提交于 2020-01-04 22:45:07
在数据库操作中,为了有效保证并发读取数据的正确性,提出的事务隔离级别。 数据库是要被广大客户所共享访问的,那么在数据库操作过程中很可能出现以下几种不确定情况。 更新丢失 两个事务都同时更新一行数据,一个事务对数据的更新把另一个事务对数据的更新覆盖了。这是因为系统没有执行任何的锁操作,因此并发事务并没有被隔离开来。 脏读 一个事务读取到了另一个事务未提交的数据操作结果。这是相当危险的,因为很可能所有的操作都被回滚。 不可重复读 不可重复读(Non-repeatable Reads):一个事务对同一行数据重复读取两次,但是却得到了不同的结果。 包括以下情况: (1) 虚读:事务T1读取某一数据后,事务T2对其做了修改,当事务T1再次读该数据时得到与前一次不同的值。 (2) 幻读(Phantom Reads):事务在操作过程中进行两次查询,第二次查询的结果包含了第一次查询中未出现的数据或者缺少了第一次查询中出现的数据(这里并不要求两次查询的SQL语句相同)。这是因为在两次查询过程中有另外一个事务插入数据造成的。 解决方案: 为了避免上面出现的几种情况,在标准SQL规范中,定义了4个事务隔离级别,不同的隔离级别对事务的处理不同。 未授权读取 也称为读未提交(Read Uncommitted):允许脏读取,但不允许更新丢失。如果一个事务已经开始写数据,则另外一个事务则不允许同时进行写操作