Linux命令汇总/常见面试真题解答

常见考点总结

1.进程相关

查看进程

jps                                  //查看当前系统的java进程情况
ps -aux                             //查看当前系统的进程情况
ps -ef                              //查看当前系统的进程情况
lsof -i:端口号                      //查看服务器某个端口的占用情况
netstat -tunlp | grep 端口号        //查看服务器某个端口的占用情况

杀死进程

kill -9 324                  //324为进程标识号PID
killall -9 NAME               //killall可以直接使用进程的名字

启动进程

./NAME

文件相关

转载自https://blog.csdn.net/u012546526/article/details/40858427

  • cat 文件查看和拼接命令,使用很简单,使用-n可以在前面添加行号,最后重定向到目标文件
cat file1 //打印文件内容到屏幕
cat -n file1 file2 > out1  //拼接文件内容并重定向到目标文件,并在文件前添加行号
  • cut 最常用的就是文件切割,比如按照某分隔符切割出指定列
cut -f n-m -d '\t' file1  # 将文件每行按照\t分割并去出每行的n-m列(默认分隔符\t)
cat -f 1,2,4- file1  # 将文件第三列去除
  • sort文件排序,常用参数有:
    -r 降序
    -o 指定输出文件,可重定向自己
    -n 依数字大小排序(默认以字典序排序)
    -t 指定分隔符(默认\t)
    -k 指定按照哪列排序
sort file1 > out1  # 将文件按照第一列字典序排序并重定向到out1
  • uniq
    将上或下的重复行合并为一行,常和sort一起使用,用于文本去重,必须先排序再去重
cat file | sort | uniq  # 文本去重
  • join
    将两个文件按照某重复列拼接,并按照指定格式输出,常用参数有:
    -t 指定分隔符
    -1 指定第一个文件某列
    -2 指定第二个文件某列
    -o 指定输出格式
    -a1 显示第一个文件所有内容
    -a2 显示第二个文件所有内容
    -e 指定没join到的内容以指定内容补齐
join -t $'\t' -1 1 -2 2 file1 file2 -o 1.2 -o 2.1 > out1  # 将file1第一列和file2第二列拼接,输出格式为file1第二列和file2第一列(两个文件欲join列必须已排序)
  • sed在线的文本编辑命令,这个命令我用的并不是很多,但是这个命令很强大!
  • grep很好用的文本搜索命令,支持强大的正则表达式,我经常用的命令如下:
    -n 显示出所在行号
grep '正则表达式' file1
  • top动态显示当前进程

  • iconv文件转码命令
    -c 忽略无效字符
    -f 原编码
    -t 输出编码

iconv -c -f gbk -t utf8 > out  # 将原gbk编码文件转换为utf8编码文件,忽略错误字符
  • df查看磁盘剩余情况的命令(因为公司服务器好多人在用,经常磁盘爆满)。
  • du查看文件夹大小,默认递归,常用的命令:
du -h  --max-depth=1  # 查看当前目录下文件夹大小
  • cp本地复制命令
cp file1 file2  # 复制file1并命名为file2
  • mv移动文件命令,也可用于重命名文件。
mv file1 dir/  # 将file1移动到dir/文件夹里
mv file1 file2  # 将file1重命名为file2
  • mkdir新建文件夹命令

  • rm删除文件或文件夹命令
    -r 递归删除
    -f 强制删除

rm -fr dir/  # 强制删除dir/文件夹
  • ssh远程登陆服务器命令。
ssh [email protected]  # 以user用户身份远程登陆ip为192.168.1.1的服务器
  • scp在各服务器间复制文件
scp [email protected]:/data/file1 ./  # 将192.168.1.1服务器上的/data/file1文件复制到本地目录下
scp ./file1 [email protected]:/data/  # 将本地目录file1文件复制到192.168.1.1服务器上的/data/文件夹下
  • wc统计文件的字符个数、行数、比特数。

  • paste横向拼接文件,和cat正好相反

  • echo打印出指定字符。
    -e 不忽略转义字符,\n就是换行等

  • date查看当前日期和时间,可以按照指定格式格式化

date -d 2-days-ago +%Y%m%d  # 打印出两天前的日期,格式是yyyy-mm-dd
  • pwd显示当前工作目录绝对路径

  • find查找文件,常用于找指定文件

find -name "abc"  # 递归查找当前文件夹下名字为abc的文件
  • chmod更改文件权限

  • head查看文件头几行

head -n 1 file1  # 查看文件第一行
  • tail查看文件最后几行,和head正好相反
tail -n 1 file1  # 查看文件最后一行
  • awk 超级好用的文本处理命令

  • vim 超级好用的编辑器

面试真题总结

  1. 查看进程/查询进程状态,查看当前哪些进程占用了8080端口
  2. 查看一个端口的占用情况,并杀死占用的进程
 lsof -i:8080                      //查看8080端口占用
 netstat -tunlp | grep 8080        //查看8080端口的占用情况
  1. 查看一个端口的占用情况,并杀死占用的进程
  2. Linux下查看进程会ps,netstate,lsof,top说了一堆。
  3. 统计字符串出现次数
  4. 查找
  5. 新建文件
  6. 查看文件
  7. 修改文件
  8. 插入
  9. 跳转到某一行
  10. 替换
  11. JMM
  12. JC
  13. Linux熟悉哪些指令。(设计加具体参数表示什么意思) ls,du,df,grep,cd -
  14. linux指令(for循环输出1-100)
  15. 给出很多串信息 包含ip url info 等信息 info包含error等状态码 用Linux命令统计出每个url对应的error概率
    windows
    windowns下如何查看进程

你可能感兴趣的:(面试)