Java面试八股文(2023最新)--Linux面试题

目录

1. 什么是Linux内核

2. Linux的体系结构.

4. 基本命令

5. 如何查看最近1000行日志

6. 如何查端口号是否被占用

7. 查看当前所有已经使用的端口情况

8. 什么是硬链接和软链接?


1. 什么是Linux内核

  • Linux系统的核心是内核,内核控制着计算机系统上的软硬件,在必要时分配硬件,并根据需要执行软件.
    • 系统内存管理
    • 应用程序管理
    • 硬件设备管理
    • 文件系统管理

2. Linux的体系结构.

Linux体系结构可以分为两块:

  • 用户空间:用户空间又包括用户的应用程序,C库
  • 内核空间:内核空间包括系统调用接口,内核,平台架构相关的代码

为什么Linux体系结构要分为用户空间和内核空间?

  • 现代CPU实现了不同的工作模式,不同模式下CPU可以执行的指令和访问的寄存器也不同

  • Linux从CPU的角度出发,为了保护内核安全,把系统分为两部分
    • 用户空间和内核空间是程序执行的两种不同的状态,我们可以通过两种方式完成用户空间到内核空间的转移
      • 系统调用
      • 硬件中断

3. Linux的系统日志文件

比较重要的是/var/log/messages文件

该日志文件是许多进程日志文件的汇总,从该文件可以看出任何入侵企图或成功的入侵.

4. 基本命令

cd(change directory):切换目录

cd ../ ;跳到上级目录

cd /opt ;跳到opt文件夹

cd ~ ;切换当前用户的家目录.root用户家目录就是root

pwd(print working directory):显示当前工作目录的绝对路径

pwd

显示当前的绝对路径

 ls(list):查看当前目录下的所有文件夹

ls -a  ;显示所有文件夹,包括隐藏文件

ls -R  ;连同子目录也显示

ll :查看当前目录下所有的详细信息和文件夹

 ll -a   显示所有文件,隐藏文件也显示

ll -R   连同子目录内容一起列出

ll -h   友好展示详细信息,可以看大小

ll -al  既能看到隐藏文件,又能显示详细列表

 touch:创建文件

touch luo.txt     创建luo.txt文件

touch /opt/luo/test.txt  在指定目录创建test.txt文件

 mkdir: 创建目录

mkdir 文件夹名称   ;在此目录创建文件夹

mkdir /opt/java/jdk    ;在执行目录创建文件夹

cat  查看文件命令

cat  lp.log   ;查看文件

less  分页查看文件

less -m 显示类似于 more 命令的百分比。
less -N 显示每行的行号。 ( 大写的 N)
两参数一起使用如: less -mN 文件名,如此可分页并显示行号。
空格键:前下一页或 page down
回车:向下一行。
b :后退一页 或 page up
q :退出。
d :前进半页。
u :后退半页

cp  复制

cp /opt/java/java.log /opt/logs/ ; java.log 复制到 /opt/logs/
cp /opt/java/java.log /opt/logs/aaa.log ; java.log 复制到 /opt/logs/ 下并且改名为 aaa.log
cp -r /opt/java /opt/logs ; 把文件夹及内容复制到 logs 文件中

 mv(move) 移动文件

mv /opt/java/java.log /opt/mysql/ ; 移动文件到 mysql 目录下
mv java.log mysql.log ; java.log 改名为 mysql.log

rm(remove) 删除

rm 文件名 ; 安全删除命令 ( yes 删除 no 取消)
rm -rf 强制删除文件夹及内容
rm -rf * 删除当前目录下的所有内容。
rm -rf /* 删除 Linux 系统根目录下所有的内容。系统将完蛋。

find   查找指定文件或目录

find -name 文件名 ; 按照指定名称查找在当前目录下查找文件
find / -name 文件名按照指定名称全局查找文件
find -name '* 文件名 ' ; 任意前缀加上文件名在当前目录下查找文件
find / -name '* 文件名 *' ; 全局进行模糊查询带文件名的文件
vi VIsual :视觉)文本编辑器 类似 win 的记事本 (操作类似于地下的 vim 命令,看底下 vim 的操 作)
vim VI IMproved :改进版视觉)改进版文本编辑器 (不管是文件查看还是文件编辑 按 Shift + 上或 者下可以上下移动查看视角)
输入 ”vim 文件名 打开文件,刚刚时是 一般模式
一般模式:可以浏览文件内容,可以进行文本快捷操作。如单行复制,多行复制,单行删除,多行删除,(退出)等。
插入模式:可以编辑文件内容。
底行模式:可以进行强制退出操作 , 不保存 :q!
可以进行保存并退出操作 :wq
按下 ”i” ”a” ”o” 键,从 一般模式 ,进入 插入模式(编辑模式)
在编辑模式下按 ”Esc” 即可到一般模式
在一般模式下按 ”:” ,冒号进入底行模式。
在一般模式下的快捷键
dd ; 删除一整行
X ; 向前删除 等同于 windowns 系统中的删除键
x ; 向后删除和大写 x 相反方向
Ctrl + f ; 向后看一页
Ctrl + b ; 向前看一页
u ; 撤销上一步操作
/word ; 向下查找 word 关键字 输入 :n 查找下一个 ,N 查找上一个(不管是哪个查找都是全局查找 只不过 n的方向相反)
?log ; 向上查找 log 关键字 输入 :n 查找上一个 ,N 查找下一个
:1,90s/redis/Redis/g ; 1-90 行的 redis 替换为 Redis 。语法 n1,n2s/ 原关键字 / 新关键字 /g n1
代表其实行 ,n2 代表结尾行 ,g 是必须要的
:0 ; 光标移动到第一行
:$ ; 光标移动到最后一行
:300 ; 光标移动到 300 , 输入多少数字移动到多少行
:w ; 保存
:w! ; 强制保存
:q ; 退出
:q! ; 强制退出
5dd ; 删除后面 5 , 打一个参数为自己填写
5x ; 删除此光标后面 5 个字符
d1G ; 删除此光标之前的所有
d0 ; 从光标当前位置删除到此行的第一个位置
yy ; 复制
p ; 在光标的下面进行粘贴
P ; 在光标的上门进行粘贴

 管道命令

单独使用:
grep String test.java ;在 test.java 文件中查找 String 的位置,返回整行
一般此命令不会单独使用下面列几个常用的命令(地下通过管道命令组合起来使用)
ps aux|grep java ;查找带 java 关键字的进程
ll |grep java ;查找带 java 关键字的文件夹及文件  

tar  解压  压缩   

解压命令:
tar -zxvf redis-3.2.8.tar.gz ;解压到当前文件夹
tar -zxvf redis-3.2.8.tar.gz -C /opt/java/ ;解压到指定目录
压缩命令:(注意 语法有点反了,我反正每次都搞反)
tar -zcvf redis-3.2.8.tar.gz redis-3.2.8/ ; 语法 tar -zcvf 压缩后的名称 要压缩的
文件
tar -zcvf 压缩后的文件(可指定目录) 要压缩的文件(可指定目录)

ps(process status)

 常用组合:ps -ef 标准的格式查看系统进程

ps -aux BSD 格式查看系统进程
ps -aux|grep redis BSD 格式查看进程名称带有 redis 的系统进程(常用技巧)

clear  清屏命令

kill 命令用来中止一个进程。(要配合 ps 命令使用,配合 pid 关闭进程)
ps 类似于打开任务管理器, kill 类似于关闭进程)
kill -5 进程的 PID ; 推荐 , 和平关闭进程
kill -9 PID ; 不推荐 , 强制杀死进程

ifconfig  查看网络地址和参数

ping:  检测与目标的连通性

ping  www.baidu.com 

free  显示系统内存

netstat  显示网络状态 

5. 如何查看最近1000行日志

tail -1000 xx.out

6. 如何查端口号是否被占用

netstat -anp | grep 端口号

7. 查看当前所有已经使用的端口情况

netstat -nultp

8. 什么是硬链接和软链接?

  • 硬链接: 通俗理解就是复制一个 + 同步更新
  • 软链接: 类似windows中快捷方式
  • inode: 文件系统中存储文件元信息(文件的创建者,文件的大小,日期等)的区域,成为节点索引
  • 区别:
    • 本质: 硬链接本质是同一个文件,软链接本质不是同一个文件
    • 跨设备: 硬链接不支持跨设备,软链接支持跨设备
    • incode: 硬链接inode相同, 软链接incode不同
    • 文件夹: 硬链接不支持,软链接支持
    • 删除源文件: 硬链接只是链接数-1,软链接无法访问
  • 实际场景基本使用软链接
  • 5
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

月月崽

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值