软件测试之Linux常用基础

目录

  • 1 总体介绍
  • 2 Linux操作系统
  • 3 应用领域和主流操作系统
  • 4 远程连接
    • 4.1 常用命令
    • 4.2 系统目录
    • 4.3 目录和文件管理
      • 4.3.1 目录管理命令
      • 4.3.2 文件管理命令
    • 4.5 压缩和解压缩
  • 5 用户权限
    • 5.1 用户和权限
    • 5.2 权限修改
    • 5.3 超级用户
  • 6 进程管理
  • 7 端口
  • 面试题

1 总体介绍

操作系统作用

  1. 操作系统是用户和计算机之间沟通的桥梁

  2. 信息查看

  3. 用户管理

  4. 目录和文件管理

  5. 进程管理

2 Linux操作系统

内核和发行版

  • Linux内核

    • 是系统的心脏

    • 是开源的

  • Linux发行版

    • 通常包括了桌面环境, 办公套件, 媒体, 播放器等应用软件

    • 常见的发行版:

      1. CentOS: 国内使用率最高的服务器系统, 免费

      2. Ubuntu: 国内使用率第二的服务器系统, 免费

      3. Redhat: 收费

3 应用领域和主流操作系统

操作系统, 英文叫 Operation System, 缩写为 OS

服务器操作系统

  • Linux: 免费, 占有率高, 安全, 稳定
  • Windows Server: 收费, 占有率低

嵌入式操作系统

  • Linux

    • 免费

    • Linux内核比较小, 最小的只有几百KB

    • 嵌入式设备: 智能机顶盒, 智能手表, 智能扫地机器人

个人桌面操作系统

  • windows: 用户群体大

  • macOS

  • Linux: 应用软件少

移动端操作系统

  • IOS

  • Android (基于 Linux)

  • 鸿蒙OS

4 远程连接

远程连接所需要素

  • 协议

    • 通信双方对数据传输控制的一组规则
  • IP

    • 通过 IP地址 找到网络上的计算机
  • 端口

    • 通过 端口号 可以找到计算机上运行的应用程序

    • SSH服务的默认端口号是22

  • 账号/密码

  • 域名 是什么?

    • q域名 是 IP地址 的别名, 方便用户记忆

4.1 常用命令

  • whoami: 查看用哪个用户在使用系统

  • pwd: 查看当前所在文件夹(print work directory)

  • date: 查看系统时间

  • ls: 查看当前目录下的文件 (list)

  • ifconfig: 查看内网ip地址

    • eth0这个设备是物理网卡
  • ping: 一般用于检测当前计算机到目标计算机之间的网络是否通畅

    • ping IP地址
      • 使用场景
        • 检查服务器有没有联网时, 检查网络延时时, ping 一下百度
        • 检查另一台服务器有没有开机时, ping 另一台服务器IP地址
  • history: 用于查看用户执行的历史命令

  • clear: 清屏

  • 在命令跟空格 --help: 跟–help参数时, 会帮我我们查询对应命令的使用手册, 但可读性不好

  • free -h: 查看服务器内存信息

  • df -h: 查看硬盘剩余空间 (disk free)

  • du -h: 显示目录下文件大小 (disk usage)

4.2 系统目录

/

根目录,在 linux 下有且只有一个根目录

/root

系统管理员 root 的家目录

/home

其他用户的家目录, 在 Linux 中, 每个用户都有一个自己的家目录, 如上图的 user01, user02, user03

/bin

bin 是 Binaries (二进制文件) 的缩写, 这个目录存放着最经常使用的命令

/etc

这个目录用来存放配置文件

/lib

lib 是 Library(库) 的缩写, 这个目录里存放着系统共享库, 其作用类似于 Windows 里的 DLL 文件

/media 和 /mnt

挂载点, 如U盘/光驱等

/tmp

tmp 是 temporary(临时) 的缩写, 这个目录是用来存放一些临时文件的

/usr

usr 是 unix shared resources(共享资源) 的缩写, 类似于 windows 下的 program files 目录

/var

var 是 variable(变量) 的缩写, 放置系统执行过程中经常变化的文件

4.3 目录和文件管理

Linux是大小写敏感的, 例如, a 和 A 是两个不同的文件夹, a.txt 和 A.txt 是两个不同的文件

自动补全

在敲出 文件/目录/命令 的前几个字母后, 按下 tab按键

如果输入没有歧义, 系统会自动补全

如果存在歧义, 按两次 tab按键, 系统会提示出对应的所有可能的结果

4.3.1 目录管理命令

绝对路径

输入时, 从 / 或者 ~ 开始的具体目录位置, 例如 /etc/apt , ~/c/cc

相对路径

输入时, 从 . 当前目录开始的位置, 例如 c 或者 ./c

命令

  • mkdir : 创建一个新的目录 (文件夹) (make directory)

  • cd 切换目录 (change directory)

  • cd / 切换到根目录

  • cd 目录 切换到指定目录

  • cd ~ 切换到用户的家目录

  • cd … 切换到上一级目录

  • ls 列出当前目录下的内容

  • ls 目录 表示列出具体目录下的内容

  • ll 表示的是 ls -l 的缩写, 指列出目录下详细信息

  • rm 删除文件目录 (英文叫 remove 删除的意思)

  • rm -rf 目录 表示删除对应目录和目录下的所有目录和文件

  • rm -rf 目录/* 表示删除对应目录下的所有目录和文件, 保留对应目录

  • * 代表通配符

  • rm -rf / 删库跑路

  • mv 移动或者重命名**, 针对文件或者目录

    • 移动: mv 源文件夹 目标文件夹/ 例如 mv a b/ 表示把当前目录下的a目录放到当前目录下的b目录中\
  • 重命名 mv 源文件夹 目标文件夹 例如 mv a c 表示在当前目录下把a重命名为c

  • find 查找文件目录

  • find 目录 -name 文件夹的名字

4.3.2 文件管理命令

  • touch : 创建文件【如果文件不存在, 则创建一个空白文件】

    • 实际场景 touch a.txt 创建文本文件, touch a.log 创建日志文件, touch a.conf 创建配置文件
  • vim : 核心作用是编辑文本文件【如果文件不存在, 则创建一个空白文件, 并打开

如果文件已经存在, 则打开这个文件】

需要按 i进入编辑模式

编辑后, 需要按 Esc按键, 退出编辑模式

输入 :wq!保存并退出这个文件

w 代表 write 写入

q 代表 quit 退出

! 代表强制

  • cat : 查看文件内容, 只作为一次性展示, 只适合查看较小的文本文件

    • -n 参数表示查看文件内容的同时显示行号
  • more : 适合查看较大的文本文件

  • less : 适合查看较大的文本文件

  • tail : 可以查看文件末尾指定行数的内容

    • 使用场景: 测试人员一边操作软件一边查看日志的动态输出, 为了找bug
      • tail -100f xx.log 代表动态查看日志的末尾100行
  • grep : 强大的文本搜索工具

    • grep -ni error xx.log 代表去搜某个日志文件中含有error信息的日志内容, 并且显示行号,忽略大小写
  • rm

    • rm -rf xx.txt
  • mv 移动 mv 源文件 目标目录【重命名 mv 源文件 目标文件】

  • find 目录 -name 文件名

  • 文件名中允许使用通配符 *

  • cp : 复制文件或者目录

    • cp 源文件/目录 目标文件/目录

    • cp x.txt xx.txt 代表在同目录下把x.txt复制一份, 复制出来的文件叫xx.txt

4.5 压缩和解压缩

在不同操作系统中, 常用的压缩包的格式是不一样的

  • windows 常用 zip , rar 格式

  • mac 常用 zip 格式

  • linux 常用 tar.gz 格式

命令

tar -zxvf  xx.tar.gz       解压缩并提取 xx.tar.gz 文件。
tar -zxvf xx.tar.gz -C     解压缩并提取 xx.tar.gz 文件到指定目录
tar -zcvf xx.tar.gz        被压缩目录 创建压缩文件

5 用户权限

5.1 用户和权限

基本概念

  • linux用户管理中包括用户用户组的管理

    • 对用户组设置权限后, 就不需要对每个用户去设置权限
  • 通过 ll命令查看目录下的所有文件和文件夹的详细信息

    • 第1位 - 代表是文件, d代表是目录

    • 第2~9位, 每3位一组, 分别代表 拥有者权限 , 组权限 , 其他用户权限

      • r 用英文表示是read, 代表读权限

      • w 用英文表示是write, 代表写权限

      • x 用英文表示是excute, 代表执行权限

5.2 权限修改

chmod, 可以修改文件或目录的所有权限 (用户/用户组/其他用户所对应的权限)

chmod使用格式: chmod 权限 目标文件或目录

chmod 777 目标文件或目录

代表给用户/用户组/其他用户所有权限

在这里插入图片描述

5.3 超级用户

  • linux系统中的root账号通常对系统所有资源具有所有权限

  • 但不推荐直接使用root账号登录

  • 可以选择切换管理员账号

    • su, 是 switch user的缩写, 表示切换用户

    • 切换用户时, 需要输入密码, 之后有一定的时效, 超过时效则必须重新输入密码

6 进程管理

进程的概念

指的就是当前正在执行中的程序可以基本理解为一个程序对应一个进程

命令

  • top 用于动态显示运行中的进程, 并且可以展示出系统总体运行相关信息

    • 在性能测试过程中, 可能会用到top, 来查看当前系统运行的资源占用情况

    • 需要查看当前进程时, 也会用到top命令

  • ps -ef 来查看进程详细情况

    • 常用的格式是 ps -ef | grep 要查的进程的相关信息

    • |是管道符, 作用是一个命令的输出通过管道作为另一个命令的输入

    • kill -9 对应的进程ID , 作用是干掉某个进程

7 端口

概念 :端口就是计算机的某个服务与外界通信交流的出口

查看端口的命令

netstat 用于显示linux的端口信息

netstat -plunt | grep 对应要找的端口号

面试题

  1. 你们公司服务器用的是什么系统?[1]

我们服务器用的是CentOS 7.0

我们服务器用的是Ubuntu 22

  1. 你操作服务器常用什么软件?[1]

我连接公司的服务器用的是 xshell

如果需要向服务器传输文件的话, 我会用 xftp

  1. free, df, du这些命令的作用?[3]或者性能测试时, 比较常用的服务器指标监控的命令?[3]
  • 一般来说在性能测试时, 我们需要监控服务器的资源使用情况

  • 比如监控服务器内存使用情况, 我就会用free -h

  • 比如需要监控服务器硬盘剩余情况, 我会用到df -h, 当然有时也会用du -h去查看硬盘目录下的文件大小

  1. linux你常用目录有哪些?[2]
  • / 根目录

  • /root 管理员家目录

  • /home/用户名 普通用户的家目录

  • /bin 存放二进制可执行文件

  • /lib 存放库文件

  • /tmp 存放临时文件

  • /var 配置环境变量时经常会用到

  1. less和more的区别?[2]
  • 在操作上基本区别不大

  • less加载速度上会比more更快, less不必读整个文件

  • 阅读到结束时, more会自动退出阅读, less不会

  • 相比more, less提供更加友好的搜索, 高亮显示

  1. 文件和目录的增删改查怎么操作?[2]
  • 新建一个文件会用到touch, 新建目录我会用到mkdir

  • 删除文件或目录时, 我经常用rm -rf

  • 修改文件内容我用vim, 重命名目录我会用到mv

  • 如果是查找文件或目录我会用到find

  • 如果是查看文件内容, 命令比较多 cat / more / less / tail / grep

  1. 文件和目录的删除命令是什么, 有什么需要注意的地方?[3]
  • 删除命令是rm, 代表remove 删除的意思

  • 需要特别注意的地方是删除是的路径填写

  1. vim命令的使用方式?[2]
  • 一般我在编辑文本文件时会用到这个命令

  • 我用vim打开文件后, 会按 i按键进入编辑模式, 然后开始输入内容

  • 完成输入后, 按 Esc退出编辑模式

  • 最后通过 :wq!完成保存并退出文件的操作

  1. 如何动态查看某个日志文件最后20行?[3]
  • 通过tail命令来完成

  • 具体操作是 tail -20f 某日志文件

  1. 压缩和解压缩怎么操作?[3]
  • 压缩和解压缩都是通过tar命令来操作的

  • 压缩用到的参数 -zcvf

  • 解压缩用到的参数 -zxvf

  1. 怎么做到远程复制文件?[2]
  • 远程复制文件需要考虑环境问题

  • 如果是windows上的文件复制到linux上, 使用xftp工具拖拽文件即可

  • 如果是linux服务器之间的远程文件复制, 使用scp命令即可

  1. 你了解top命令吗? 你在什么时候会用到top命令?[3]
  • top 用于动态显示运行中的进程, 并且可以展示出系统总体运行相关信息

  • 在性能测试过程中, 可能会用到top, 来查看当前系统运行的资源占用情况

  • 需要查看当前进程时, 也会用到top命令

  1. 如何查看mysql进程?[3]
  • 通过ps命令来实现

  • ps -ef | grep mysql 通过管道符匹配mysql关键字来筛选具体要查找的mysql进程

  1. 如何查看22端口?[3]
  • 我是通过netstat命令实现的

  • 然后执行netstat -plunt | grep 22

  1. 如何修改文件或目录的权限?[3]
  • 我们组织规划的比较好, 一般不太需要修改权限

  • 如果一定修改的话, 那么 chmod 777 可以解决所有权限问题

  • 比如我可以让管理员登录root用户去帮我执行权限修改的命令

  • 或者我如果有root账号的话, 我可以切换管理员去修改权限

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/30394.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

第四篇:精通Docker构建:Dockerfile的艺术与策略

精通Docker构建:Dockerfile的艺术与策略 1. 开篇:探索Docker的革命 在探讨我们的主题之前,让我们先回顾一下Docker的概念。Docker是一个开源平台,用于自动化应用程序的部署、扩展和管理,这一切都是在轻量级的容器中进…

【通过新能源汽车的智慧数字底盘技术看计算机的相关技术堆栈?以后是软硬结合的全能程序员的天下,取代全栈(前后端都会的全栈程序员)】

汽车的“智慧数字底盘”是一个综合性的技术平台,旨在提升车辆的性能、安全性和驾驶体验。它集成了多种先进的技术和系统,是全能程序员的必杀技! 1. 传感器技术 a. 激光雷达(LiDAR) 用于生成高分辨率的3D地图&#…

[吃瓜教程]概览西瓜书+南瓜书第1、2章

第一章 绪论 1.1机器学习的定义,什么是机器学习? 1)机器学习是这样一门学科,它致力于研究如何通过计算的手段,利用经验来改善系统自身的性能。 2)机器学习所研究的主要内容是关于在计算机上从数据中产生模型的算法&a…

给日期加上15天

// 给当前日期加上15天 function toAndTimeFifteen(params) {let startDate new Date(params); // 创建一个Date对象表示2024年5月31日startDate.setDate(startDate.getDate() 15); // 给当前日期加上15天let dateString formatDate(startDate)// 转换时间格式return dateSt…

之所以选择天津工业大学,因为它是双一流、报考难度适宜,性价比高!天津工业大学计算机考研考情分析!

天津工业大学(Tiangong University),简称“天工大”,位于天津市,是教育部与天津市共建高校、国家国防科技工业局和天津市共建的天津市重点建设高校、国家“双一流”建设高校、天津市高水平特色大学建设高校、中国研究生…

6.Hugging Face Transformers 快速入门

Hugging Face Transformers 库独特价值 丰富的预训练模型:提供广泛的预训练模型,如BERT、GPT、T5等,适用于各种NLP任务。易于使用:设计注重易用性,使得即使没有深厚机器学习背景的开发者也能快速上手。最新研究成果的…

chrome 录制器及性能分析工具的使用

需求背景: 对比不同VPN方案网络延迟的差异。 验证工具: chrome浏览器自带的录制器、性能插件可以完美的解决这个问题。 注意:录制的操作都在当前页面,不存在新开标签页的场景 解决方案: 使用chrome录制器&#xf…

18张Python数据科学速查表.png

数据科学已经发展成为一个庞大的系统,包含数学、统计学、概率论、计算机、数据库、编程等各种理论技术。 目前在主流的数据科学领域一般有三大生态,一是以sas、matlab、spss等为代表的商业软件生态,二是围绕R语言建立起来的开源生态&#xf…

[Linux] 文件/目录命令

pwd print working directory cd change directory cd #返回主目录 cd ..返回上级目录 cd . 不动 cd ~ 用户名 进入某用户的主目录 mkdir mkdir 目录名 mkdir -p xx/yy/zz #一次创建多重目录 rmdir remove directory 删除空目录,只能删除空目录,别的不能…

嵌入式开发十八:USART串口通信实验

上一节我们学习了串口通信的基本理论,串口通信是学习单片机的一个重要的一步,非常重要,这一节我们通过实验来学习串口通信的使用,以及串口的接收中断的使用。 一、发送单个字节uint8_t数据或者字符型数据 实现的功能:…

React@16.x(33)动画(上)

目录 1,Transition一些常用 props1,mountOnEnter2,unmountOnExit3,appear 2,CSSTransition2.1,和 Transition 组件的区别2.2,举例2.3,常用 props2.3.1,classNames2.3.2&a…

【UE数字孪生学习笔记】 Apifox一体化接口测试平台

声明:部分内容来自于b站,知乎,慕课,公开课等的课件,仅供学习使用。如有问题,请联系删除。 部分内容来自UE官方文档,博客等 Apifox接口测试 Apifox 是集 API 文档、API 调试、API Mock、API 自动…

C++初学者指南第一步---8.类型系统(基础)

C初学者指南第一步—8.类型系统(基础) 文章目录 C初学者指南第一步---8.类型系统(基础)1.用const声明常量2.类型别名3.类型推导 auto4.常量表达式:constexpr (C11) 1.用const声明常量 语法: Type const v…

[手机Linux PostmarketOS]一,1加6T真正的手机Linux系统

前面用Linux deploy软件安装了Linux系统在手机,实则不是真正的手机刷成了linux系统,而是通过Linux deploy软件在容器里安装了Linux系统,在使用方面会有诸多限制,并不能发挥Linux的真实强大之处,于是我又百度又谷歌(真不…

Docker(四)-Docker镜像

1.概念 镜像是一种轻量级的、可执行的独立软件包,它包含运行某个软件所需的所有内容,我们把应用程序和配置依赖 打包好形成一个可交付的运行环境(包括代码,运行时需要的库,环境变量和配置文件等),这个打包好的运行环境…

【Java】三种实现网络通讯的方式以及相关协议的使用示例

Java网络 - 应用篇 👾以下代码均经过本人实测,请放心食用。顺便求个关注,谢谢!! 文章目录 Java网络 - 应用篇Socket 篇简介代码实现SockerServerSocketClient RestTemplate 篇简介...ForEntity 与 ...ForObject 对比示…

IPFoxy代理IP:IPv4与IPv6性能与安全性对比

在使用IPFoxy静态代理IP的过程中,经常有小白朋友疑惑,IPv4与IPv6有何区别?他们在性能与安全上的差别如何,又该如何选择?在这篇博文中,我们将从各个方面为您科普这一区别,帮助您更好的选择。 一、…

柒拾肆- 如何通过数据影响决策(五)- 时序数据

什么是好? 对于 单一时序指标 来说(如最简单的 销售、日活顾客数、订单数 等 ),在决策时该怎样 看 呢? 或者换句话说,数据 应该怎样 表达 才能让决策者做出 更全面 的决策呢? 一、目前的方式 …

Mkdocs中文系列教程补充(1)

什么是requirements.txt 我的理解是mkdocs依赖的py库 第一次建立MKdocs文档使用 mkdocs new . 完后,比较建议执行一下: pip install -r requirements.txt 不然mkdocs serve后会出现什么 xxx not found ,比如下面这位老哥 示例 mkdocs …