• linux面试题


    Linux的体系结构

    • 体系结构主要分为用户态(用户上层活动)和内核态
    • 内核:本质是一段管理计算机硬件设备的程序
    • 系统调用:内核的访问接口,是一种能不再简化的操作
    • 公用函数库:系统调用的组合拳

    如何查找特定的文件

    语法 find path [options] params

    • find ~ -name "yzy.java" #精确查找文件
      
    • find ~ -name "yzy.*"  #模糊查找文件
      
    • find ~ -iname "target*"  #不区分文件名大小写查找
      
    • man find #查找关于find指令的使用说明
      

    检索文件内容

    语法:grep [options] parttern file

    作用:查找文件里符合条件的字符串,并把匹配的行打印出来

    管道操作符 |

    作用:可将指令连接起来,前一个指令的输出作为后一个指令的输入

    • #再yzy.log找出有yzy[true]的行,由于[]是特殊字符需要转义
      grep "yzy[true]" yzy.log
      
    • #找出形如engine[[0-9a-z]]的数据,并输出
      grep -o "engine[[0-9a-z]]"
      
    • #将输入的信息过滤掉“grep”并输出
      grep -v "grep"
      

    对文件内容做统计

    语法:awk [options] 'cmd' file

    • 一次读取一行文本,按输入分隔符进行切片,切成多个组成部分

    • 将切片直接保存在内建的变量中,$1,$2...($0表示行的全部)

    • 支持对单个切片的判断,支持循环判断,默认分隔符为空格

    示例文本(yzy.java):

    id    name    username    password
    1     yzy     yzynb       123
    2     hhh     hhhnb       321
    1     haha    hahanb      321
    
    awk  '{print $1}' yzy.java  #返回第一列的数据
    
    id
    1
    2
    1
    
    • awk '{print $1,$4}' yzy.java #返回第一列和第四列的数据
      
    • awk '$1=="1"{print$0}' yzy.java #返回第一列等于1的数据
      
    • #统计第一列各值出现的次数
      awk '{arr[$1]++} END {for(i in arr){print i"	"arr[i]}}' yzy.java
      

      结果:

      1	2
      id	1
      2	1
      

    批量替换文本内容

    语法:sed [option] 'sed command' filename

    作用:适合用于对文本的行内容进行处理

    • #将以Str开头的每行,修改为String开头
      sed -i 's/^Str/String/' replace.java
      
    • #将以.结尾的每行,修改为以;结尾
      sed -i 's/.$/;/' replace.java
      
    • #全文搜索将python替换成java,若是不加g,则每行只会替换第一个匹配的字符串
      sed -i 's/python/java/g' replace.java
      
  • 相关阅读:
    XML相关知识点
    MLPlatform开发日志
    1.0 es6 箭头函数
    基本数学概念
    4.4 thymeleaf使用补充
    vim操作手册
    eclise创建后台项目
    正则表达式
    数据库隔离级别
    1. gradle的使用教程
  • 原文地址:https://www.cnblogs.com/shouyaya/p/13503103.html
Copyright © 2020-2023  润新知