基础知识2020-5-9

Linux

1在/var目录下找出90天之内未被访问的文件
2在整个目录树下查找文件core 找到后删除
3strings命令有什么作用
4 tee过滤器有什么作用
5export PS1 = ” L O G N A M E @ h o s t n a m e : LOGNAME@hostname: LOGNAME@hostname:PWD: 这条命令是在做什么?
6Linux命令 > 和 >>

Answer

1 find /var ! -atime -90
2find / -name core
find / -name core -exec rm {}
3
strings命令用来提取和显示非文本文件中的文本字符串
在这里插入图片描述
4
在这里插入图片描述
执行 ll /etc | nl | tee /tmp/ll.out 代码 ll的输出会输出到/tmp目录下的ll.out文件并且会在终端显示
基础知识2020-5-9_第1张图片
5
在这里插入图片描述
会显示出当前登录名:主机名和当前目录
6 >表示输出,会覆盖文件原本的内容

表示追加 ,会将内容追加到已有文件的末尾
基础知识2020-5-9_第2张图片

java

1 tcp为什么需要三次握手 两次不行吗
2 tcp粘包是什么情况
3 OSI的七层模型都有哪些

Answer

1
为了实现数据的可靠传输,tcp通信的双方都必须维护一个序列号,以标识发送出去的数据包中,那些是已经被对方收到的。三次握手的过程就是通信双方告知对方序列号起始值,并确认对方已经收到了序列号起始值的必经步骤
如果只是两次握手,至多只有连接发起方的起始序列号能被确认,另一方选择的序列号则得不到确认。
2
1 发送方发生粘包
采用tcp协议传输数据的客户端与服务器经常是保持一个长连接的状态,双方在连接不断开的情况下,可以一直传输数据,担当传输的数据包过小时,TCP协议会默认采用Nagle算法,将这些较小的包合并发送。这个合并过程是在发送缓冲区中进行的,也就是说数据发送出去就已经是粘包的状态了。
在这里插入图片描述
2接收方发生粘包
接收方采用TCP协议接收数据的过程如下:数据达到接收方,从网络模型的下方传递至传输层,传输层的TCP协议处理是将其放置接收缓冲区,然后由应用层来主动获取。这时会产生一个问题,就是我们在程序调用的读取函数不能及时把缓冲区数据读取出去,而下一个数据到来时又有一部分放于缓冲区末尾,等我们读取数据时就是一个粘包。
在这里插入图片描述
3
从下向上:
物理层 建立、维护、断开连接
数据链路层
网络层
运输层
会话层
表示层
应用层

python

1正则表达式匹配出

hello.cn


2 python 传参数是传值还是传址
3 求两个列表的交集 并集 差集
4 生成0-100的随机数
5 lambda匿名函数好处

Answer

1
前后<><>是对应的时候 可以用下述方法匹配
基础知识2020-5-9_第3张图片
2
对于不可变类型(数值型、字符串、元组)因变量不能修改,所以运算不会影响到变量自身 。而对于可变类型(列表 字典)函数体运算可能会更改传入的参数运算
基础知识2020-5-9_第4张图片
3
基础知识2020-5-9_第5张图片
4
基础知识2020-5-9_第6张图片
5
精简代码 lambda省去了定义函数,map省去l写for循环过程
基础知识2020-5-9_第7张图片

你可能感兴趣的:(java面试知识积累)