Java面试基础--Linux篇
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Java⾯试基础--Linux篇
0.⽇常命令
cd ⽬录路径:跳转到指定⽬录
mkdir ⽬录名称:新增⽬录
pwd: 获取当前路径
su: 切换⽤户
ll: 查看当前⽬录侠的⽂件和⽬录
rm -rf ⽬录: 递归删除指定⽬录下的所有⽂件
vi ⽂件:修改⽂件
mv 源⽂件夹名新⽂件夹名:移动⽂件夹到指定⽬录
grep:查找想要的信息
cp -r 源⽬录名新⽬录名:拷贝指定⽬录中的⽂件到新⽬录中
touch ⽂件名:创建⽂件
find -name ⽂件名:查找⽂件
ls -ahl:查看⽂件的所有者
chkconfig --add xxx: 将xxx脚本加⼊到开机启动项⾥⾯
chkconfig --list:查看添加是否成功
shutdown -h now:指定现在⽴即关机;
shutdown +5 "System will shutdown after 5 minutes":指定5分钟后关机,同时送出警告信息给登⼊⽤户
reboot:重开机
reboot -w:做个重开机的模拟(只有纪录并不会真的重开机)
1. 帮助命令:man,help, info
help xxx #显⽰内置命令帮助信息;
xxx --help #显⽰外置命令帮助信息;
man xxx #⽆内外置之分,显⽰的内容⽐help更详细;
info xxx #得到的内容⽐man更详细;
2.查看活动进程的命令:ps,top, pidstat
ps ⽤于显⽰系统内的所有进程
ps-elf 查看所有进程;
ps -ef | grep java 查看和java有关的所有进程;
top ⽤于查看活动进程的CPU和内存信息,能够实时显⽰系统中各个进程的资源占⽤情况,
可以按照CPU、内存的使⽤情况和执⾏时间对进程进⾏排序。
pidstat ⽤于监控全部或指定的进程占⽤系统资源的情况,包括CPU、内存、磁盘I/O、线程切换、线程数等数据。
pidstat -u/-r/-d -p 进程号 --解释:(-u CPU, -r 内存,-d 磁盘I/O
3.查看⽇志常⽤命令:tail,head,cat,more,less,sed
tail:对⽂件进⾏动态监控
tail -fn 200 test.log 实时监控200⾏⽇志
tail -n 10 test.log 查询最后10⾏⽇志
tail -n +10 test.log 查询10⾏之后的所有⽇志
head -n 10 test.log 查看头10⾏⽇志
head -n -10 test.log 查看除最后10⾏的其他⽇志
cat -n test.log | grep "run" 在test.log中查询包含run的⾏
cat test.log 显⽰test.log中的所有内容
sed -n '/2019-11-17 16:17:20/,/2019-12-17 16:17:36/p' test.log 查找指定⽇期范围内的⽇志
sed -n '1,3p' test.log 显⽰第1到3⾏⽇志
more可以显⽰百分⽐,回车可以向下⼀⾏,空格可以向下⼀页,q可以退出查看
more -4 test.log 每屏显⽰4⾏⽇志
more +/run test.log 从⽇志中查找第⼀个出现"run"字符串的⾏,并从该处前两⾏开始显⽰输出
cat test.log | more -5 得到test.log中的全部内容并且每次显⽰5⾏
more 仅能向前移动,却不能向后移动
less test.log test1.log 浏览多个⽂件
ps -ef | less -N ps查看进程信息并通过less分页显⽰同时显⽰⾏号
ps aux|grep redis:查看包括redis字符串的进程
pgrep redis -a:查看包括redis字符串的进程
history 查看所有的历史记录
history | grep xxx 查看历史记录中包含某些指令的记录
history | more 分页查看记录
history -c 清空所有的历史记录
打开超⼤⽂件:
1. head -10000 slowquery.log > temp.log 将slowquery.log的前10000⾏⽇志写⼊到temp.log中
2. tail -10000 slowquery.log > temp.log 将slowquery.log的后10000⾏⽇志写⼊到temp.log中
3. sed -n '10,10000p' slowquery.log > temp.log 把slowquery.log第10到10000⾏的数据写⼊到temp.log中
4. cat catalina.log | grep '2017-09-06 15:15:42' > test.log 根据查询条件导出
4.压缩⽂件命令
tar -zxvf xxxx.gz: 解压⽂件到当前⽬录下
tar -zxvf xxxx.gz -C /usr/local 解压⽂件到指定位置
tar -zcvf abc.gz a.txt b.txt c.txt 将这三个⽂件压缩成abc.gz压缩包
tar -zcvf abc.gz /abc/ 将指定⽬录压缩成压缩包
5.杀死⼀个进程的操作
⽅法⼀:把ps的查询结果通过管道给grep查找包含特定字符串的进程, 管道符“|”⽤来隔开两个命令,管道符左边命令的输出会作为管道符右边命令的输⼊。
例如: ps -ef | grep firefox 找到firefox进程的进程号
然后:kill -s 9 6496 杀死进程
⽅法⼆: 使⽤pgrep查询某个进程的进程号
例如:pgrep firefox
然后:kill -s 9 6496
⽅法三: 使⽤pkill, pkill⽆须 “s”,终⽌信号等级直接跟在 “-“ 后⾯
例如:pkill -9 firefox
6.权限命令
操作系统中每个⽂件都拥有特定的权限、所属⽤户和所属组,Linux中权限⼀般分为读(readable)、写(writable)和执⾏(excutable),分为三组。分别对应⽂件的属主(owner),属组(group)和其他⽤户(other),通过 ls -l 命令我们可以查看某个⽬录下的⽂件或⽬录的权限
⽂件的类型:
d:代表⽬录