软件测试基础篇——Linux

1、Linux系统的特征

  1. 开源免费:

    开源:开放源代码,指的是底层的源代码是可以开放出来,给相关的开发者,根据实际的需求做出修改的。

    免费:不花钱,自由传播。

​ Linux是一种免费使用和自由传播的类似于UNIX操作系统,其中包括真正的多任务、共享库、需求装载、程序执行、优秀的内存管理以及 TCP/IP网络支持等。

​ Linux的基本思想有两点:第一,一切都是文件;第二,每个文件或者目录都有确定 的用途。其中第一条详细来讲就是系统中的所有都归结为一个文件,包括命令、硬件和软件 设备、操作系统、进程等等

2、文本编辑器

vi/vim命令:

​ 作用:创建文件、编辑文件、查看文件

​ 格式:vi/vim 文件名

​ 备注:如果文件不存在,就会创建;如果文件存在,就可以进行编辑或查看

面试点:vi/vim进行文件操作时,会经历几种模式? 3种

命令模式:vi/vim 文件名 ——>命令写完后,按下回车键,相当于打开了这个文件

编辑模式:需要按下i或a键,进入到编辑操作

末行模式:当编辑完成后,按下esc键退出编辑模式

可以使用的参数:

:wq:保存并退出

:wq!:强制保存并退出

:w:保存

:q:退出

:q!:强制退出

dd 删除一行文字

x 删除一个字符

:行数 光标跳转到指定的行

$ 光标跳转到行尾

G 光标跳转到末尾(最后一行的首个字符)

/关键词 从光标所在的当前位置开始查找和该关键词相关的数据(就近原则)

备注:文本文件格式:文件名.文件的后缀 1.txt 2.doc 3.iso…Linux系统中文件可以没有后缀

3、Linux常见的操作命令

学习技巧:①命令的作用 ②命令的语法 ③命令和参数结合的作用

  1. Linux系统中管理文件和目录的操作命令

    • pwd 打印(显示)当前所在的路径(目录)

      ​ [root@localhost ~]# pwd

      ​ /root

    • cd 切换目录(改变路径)

      ​ 格式:cd 目录(注意好目录路径)

      ​ 例:切换到home目录下:cd /home

    • cd… 返回上一级目录(退出当前所在的文件夹)

      例:/a/b/c/d ——>cd… ——>/a/b/c

    • cd 返回当前用户的主目录(家目录)

      root用户:cd——>/root

      普通用户:cd——>/home/用户名目录

​ 综合练习:Linux系统中更改网络配置

​ a.先进入存放网络配置文件的目录:/etc/sysconfig/network-scripts

​ cd /etc/sysconfig/network-scripts

​ b.编辑网络配置文件:一般是目录下的第一个文件

​ c.修改ONBOOT=yes,开启网络自启动连接

​ d.重启网络服务:service network restart (可选可写)

  • ls 查看(显示)目录下的内容

​ 格式一:ls 查看当前目录下的内容

​ 格式二:ls 目录名 查看指定目录下的内容

​ 格式三:ls 参数 目录名/文件名

参数:

  • ls -a 查看目录中所有的内容,包括隐藏文件
  • ls -l 查看目录下每个文件或文件夹的详细细节属性(权限,大小,创建/修改时间,所属的用户)

​ 备注:如果-l后面写的是一个文件名:查看该文件的属性;如果-l后面写的是一个目录名:查看该目录下的每一个文件和文件夹的属性

  • ls -r:逆向显示查看的内容
  • ls -R:不仅查看目录下的内容,还把子目录(嵌套目录)的内容一并做查看

​ 例:ls -R /home 查看home目录下的内容,包括子目录(嵌套目录)的目录

  • ls -al:查看目录中所有(包含隐藏)文件和文件夹的属性信息
  • cat 显示文本的内容

​ 格式:cat 文件名

​ -n:显示行数 cat -n 文件名

​ 备注:当命令和参数做结合时:Linux命令 参数 其他

  • touch 创建空白的文件

​ 格式:touch 文件名

​ 一次创建多个文件:touch 文件名1 文件名2 文件名3…

  • grep 在文件中进行关键字数据查找操作

​ 格式:grep 关键字 文件名

​ 默认查找是区分大小写

​ -n:显示行数+内容,写法:grep -n 关键字 文件名

​ -i:不区分大小写,写法:grep -i 关键字 文件名

  • cp 复制文件

​ 格式:cp 源文件(要复制的文件) 目标文件(复制到的地方)

​ a.复制当前目录下的文件到指定的位置

​ b.复制的文件没有在当前目录下,需要把文件路径写完整

​ c.复制文件也支持重命名操作

​ d. ***** 任意,所有的意思—–>.txt 所有的后缀是.txt文件 f.doc f开头的,后缀是.doc的所有文档 t.:t开头所有文件, . :所有文件

​ 例:将桌面中所有后缀是.txt的文档,复制到boot目录

​ 参数: -i:复制的文件到指定的位置,如果有同名的,会提示是否覆盖(默认)

​ -v:显示复制的进度

-r:复制目录

  • mv 移动(剪切)文件和目录

格式:mv 源文件 目标文件

​ -i 覆盖的友好提示(默认)

​ -v 移动的进度

​ -f 强制移动

  • mkdir 创建目录

​ 格式:mkdir 目录名 目录2 目录3…

​ 创建嵌套的目录:mkdir -p 目录名1/目录名2/目录名3…

  • rmdir 删除空目录

​ 格式:rmdir 目录名 目录名2 目录名3…

扩展:-p 删除指定目录,如果指定目录被删除后,它的上一级目录为空,也会一并删除

  • rm 删除文件

​ 格式:rm 文件名 文件名2 文件名3…

​ -i 删除时给出确认提示(默认)

​ -f 强制删除

​ -v 删除的进度

​ -r 删除目录(空+非空)

​ -rf 强制删除目录

4、线上查询命令

  1. man 用来查看某个Linux命令的注意事项(帮助文档)

    格式:man Linux命令

    按下q键退出查看

  2. locate 定位文件或目录

​ 格式:locate 关键词 显示文件或目录名中包含该关键词的位置(名字)

  1. whatis 查看Linux命令的作用

​ 格式:whatis Linux命令

5、Linux系统实现对文件或目录的压缩(打包)或解压缩的操作

  1. bzip2 对文件进行压缩

​ 格式:bzip2 文件名 文件名2 文件名3…

​ 产生压缩文件后缀:XXX.bz2

  1. bunzip2 对.bz2的压缩包进行解压

​ 格式:bunzip2 文件名1.bz2 文件名2.bz2 文件名3.bz2…

  1. gzip 压缩文件

​ 格式:gzip 文件名 文件名2 文件名3…

​ 产生压缩文件后缀:XXX.gz

  1. gunzip 对.gz的压缩包进行解压

​ 格式:gunzip 文件名.gz 文件名2.gz 文件名3.gz…

​ gzip -r 目录名 对目录中所有的文件进行压缩.gz

​ gunzip -r 目录名 对目录中所有的.gz文件进行解压操作

  1. tar 对文件或目录进行压缩和解压缩操作

    • tar实现对目录压缩操作(默认)

      格式:tar 参数 压缩后文件的名字.tar 目录名

    参数:

    ​ -c 压缩

    ​ -x 解压缩

    ​ -t 在不进行解压的情况下,查看tar压缩包的内容

    ​ -z 代表gzip

    ​ -j 代表bzip2

    ​ -v 显示压缩或解压缩的进度过程

    ​ -f 指定名字

    目录压缩:-cvf

    目录的解压缩(.tar压缩包):-xvf

    • tar实现对目录解压缩操作:tar -xvf 压缩包名字.tar

    • 可以将多个目录,压缩在同一个压缩包:tar -cvf 压缩包名字.tar 目录名1 目录名2 目录名3…

    • tar实现对文件压缩

      格式一:tar -czvf 压缩后文件名.tgz 文件名 ——>tar+gzip

      格式二:tar -cjvf 压缩后文件名.tbz 文件名 ——>tar+bzip2

    • tar实现对文件解压缩

      格式一:tar -xzvf 压缩包名.tgz

      格式二:tar -xjvf 压缩包名.tbz

    • -tvf:查看tar包中的内容(不解压)

      格式:tar -tvf 压缩包名.tar


回顾
  1. 对目录和文件的操作命令:

​ cat 显示文本/文件的内容 -n 显示行号

​ touch 文件 创建

​ grep 关键词 文件名 从文本中查看和该关键词相关的数据 -n 显示行号 -i 忽略大小写

​ cp 复制文件 -r 复制目录

​ mv 移动文件和目录

​ mkdir 创建目录

​ rmdir 删除空目录

​ rm 删除文件 -r 删除目录 -f 强制删除

  1. 线上查询命令

​ man Linux命令 查看该命令的使用方式

​ whatis Linux命令 查看命令的作用

​ locate 关键词 查看名字中包含该关键词的文件或目录(名字)

  1. 压缩和解压缩

​ bzip2 文件 ——>XXX.bz2 压缩

​ bunzip XXX.bz2 解压缩

​ gzip 文件 ——>XXX.gz 压缩

​ gunzip XXX.gz 解压缩

  1. tar命令:

​ 对目录压缩:tar -cvf 压缩名.tar 目录名

​ 对目录解压缩:tar -xvf 压缩名.tar

​ 对文件压缩:

​ 格式一:tar -czvf 压缩名.tgz 文件名

​ 格式二:tar -cjvf 压缩名.tbz 文件名

​ 对文件解压缩:

​ 格式一:tar -xzvf 压缩名.tgz

​ 格式二:tar -xjvf 压缩名.tbz


  1. 文件阅读命令

①head 查看文件头部内容(前十行)

​ 格式:head 文件名

自定义查看行数:head -行数 文件名

注意:空行/空格也算作一行

②tail 查看文件尾部的内容(默认后十行)

​ 格式:tail 文件名

自定义查看行数:tail -行数 文件名

③more 分页查看

​ 格式:more 文件名

​ 翻页查看:向下:空格键 向上:B 键 退出:q

设置每页显示的行数:more -行数 文件名

从指定的位置开始分页查看:more +行数 文件名

例:从10行开始看 more +10 文件名

了解:more +/关键词 文件名 从文件中定位该关键词相关的数据,第一次出现的位置,并从该位置的前两行开始,把剩下的内容进行分页查看

| 管道符:将前面命令结果的输出,当作后面命令的输入

例:Linux命令1 | Linux命令2 ——>将命令1的结果,交给命令2进行“二次加工”

例:将etc目录下所有文件和目录的详细属性信息进行分页查看,每次查看5行

image-20230713211835690

  1. 定位,查找文件命令

①which Linux命令 查找和该命令相关的文件

​ 注意:查找到一个,就会立刻停止

②whereis Linux命令/程序名 查找和该命令或程序相关的文件

​ -b 只查找命令或程序相关的可执行文件(二进制文件)

​ -m 只查找命令或程序相关的帮助说明文档

  1. Linux系统中管理使用者和设置权限的命令

①useradd 添加用户

​ 格式:useradd 用户名

②passwd 修改/设置密码

​ 格式:passwd 用户名

③userdel 删除用户

​ 格式:userdel 用户名 删除用户,但是用户相关的目录会保留在home目录下

​ userdel -r 用户名 彻底删除用户

④su 切换用户

​ 格式一:su 用户名 切换用户,但是新用户使用的系统环境还是由上个用户所保留的

​ 格式二:su -l 用户名 切换用户,同时把新用户的环境一并切换进来

  1. 权限

    1. 权限构成的总长度:10位
    2. 权限划分成四组来进行分析:
    第一组占一位表示的是文件的类型-:文本文件 d:目录或文件夹
    第二组占三位表示的是文件拥有者的权限、文件主人、文件所属者的权限u表示
    第三组占三位表示的是和文件拥有者同组成员的权限g表示
    第四组占三位表示的是其他人的权限o表示

    权限的类型:

    • r 读的权限
    • w 写的权限
    • x 执行(运行)的权限
    • rwx:可读可写可执行 如果没有该权限,会用 - 直接替代

​ 语法:chmod 用户身份(ugo)+权限 文件名/目录名 添加权限

方法一:权限的修改操作:+ 添加权限 - 去掉权限 = 重新赋予权限

​ 例:将所有人的权限改为可读可写可执行:chmod a=rwx file.txt

​ 方法二:数字修改法:r—读—4 w—写—2 x—执行—1

​ 格式:chmod 三个数字 文件名/目录名 三个数字分别代表的是u g o

​ 例:chmod 765 file.txt ——>rwx rw- r-x

  • chown 更改文件的拥有者

​ 格式:chown 用户名 文件名

  • chgrp 更改文件所属的群组

​ 格式:chgrp 用户名 文件名

注意:上述操作,只有root用户(系统管理员)才能进行操作

  1. 有关关机和查看系统信息的命令

①exit 退出

​ 注意:直接退出终端窗口(界面),如果前期有切换用户的操作,可以退出用户切换记录

②重启 reboot

​ shutdown -r now|时间点11:30

③关机 halt

​ shutdown -h now|时间点11:30

​ 扩展:shutdown -t 分钟数 在指定分钟数内进行关机

④查看进程信息

​ 进程:指的是系统一个个正在运行的程序

​ ps:静态查看进程信息

​ top:动态查看进程信息

​ PID属性:进程ID,系统给每一个正在运行的程序分配的序列号,唯一

​ 按下q键,终止进程信息的查看

​ ps u 列出进程的使用者(user)

​ ps x 列出所有进程的pid(进程号)

⑤kill 结束进程

​ 格式:kill PID

⑥date 显示系统日期和时间

​ date -r 文件名 #查看该文件最后一次修改的时间

​ date -s 时间点11:30 #修改时间

​ date -u 查看格林尼治时间

⑦cal 日历 默认显示当前月份

​ cal 年份 #显示指定年份日历数据

​ cal 月份 年份 #显示指定年中月份数据

  1. 磁盘操作空间命令

    ①df a 查看磁盘(文件系统)的使用情况

    ②du -ab 查看文件或目录所占的磁盘空间(文件或目录大小)

    例:du -ab /etc #查看etc目录下每个文件或文件夹所占的磁盘空间

  2. 网络操作命令

①ip addr 查看网络配置信息(IP)

​ 修改网络配置文件:vi /etc/sysconfig/network-scripts/ifcfg-ens33 ——>ONBOOT=yes 开启网络自连接

②ping 检测网络通不通

格式一:ping 域名(网站的名字) 例:ping www.baidu.com

格式二:ping ip地址 检测当前主机与IP对应的目标主机之间是否能够进行通信 例:ping 10.9.6.23

③netstat 查看/显示网络的使用情况(状态) 了解

​ 类似于查看网络访问/使用的历史记录

  1. 其他命令

​ ①clear 清屏

​ ②echo 输出

​ 格式:echo “输出的内容”

​ ③uptime 显示系统运行的时间

​ ④wc 统计一个文本的行数、字数、字节数

​ 格式:wc 文件名

​ -l 行数

​ -w 字数

​ -c 字节数

​ 字数统计算法:是以字符为整体来统计的,例:

​ 第一行:软件测试—–>这四个字是连在一个整体,这一个整体会认为是一个字

​ 第二行:test testing ——>这是两个字

综合练习:Linux系统中更改网络配置

​ A.先进入存放网络配置文件的目录:/etc/sysconfig/network-scripts

​ cd /etc/sysconfig/network-scripts

​ B.编辑网络配置文件:一般是目录下的第一个文件 vi ifcfg-ens33

​ C.修改ONBOOT=yes,开启网络自启动连接

​ D.重启网络服务:service(服务) network(网络) restart(重启)(可选可写)


小总结

  1. 文本编辑器 vi vim 注意:操作流程

​ 命令模式—>按下i或a—>编辑模式—>按下esc—>末行模式

  1. Linux系统对文件和目录管理操作命令:

​ pwd cd Ls -R cat touch grep -n行号 cp -r mv mkdir(创建文件夹) rmdir rm -rf(删除)

  1. 线上查询命令

​ man locate whatis

注意:locate定位文件、目录,对于新产生的文件和目录,是有延迟性;如果想要获取新产生的文件、目录,可以借助于updatedb:更新系统的数据库

  1. 压缩和解压缩命令

​ bzip2 文件 .bz2 —>bunzip2

​ gzip 文件 .gz —>gunzip

​ tar 参数:

​ 目录:cvf 压缩 xvf解压缩

​ 文件:czvf cjvf 压缩 xzvf xjvf解压缩

​ tvf:在不进行解压的情况下,查看压缩包的内容

  1. 文件阅读命令

​ head tail more

  1. 文件定位,查找命令

​ which whereis

  1. 设置权限和管理使用者命令

​ useradd userdel passwd su chmod chown chgrp

  1. 关机和查看系统信息命令

​ exit reboot halt ps top(查看信息) kill(结束) date(查看日期) cal(查看日历)

  1. 查看磁盘空间操作命令

​ du(查看文件每个目录的大小) df

  1. 网络操作命令

​ 【ip addr】 ping netstat

  1. 其他命令

​ clear echo uptime wc

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

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

相关文章

设计模式(2)工厂方法模式

一、 1、介绍:定义一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到其子类。简单工厂模式的最大优点在于工厂类中包含了必要的逻辑判断,根据客户端的选择条件动态实例化相关的类,对于客户端来说…

Docker启动、停止、删除容器的相关指令

关闭容器指令: docker stop name启动命令: docker start name删除容器: docker rm name 或 id查看所有容器id: docker ps -aq删除所有容器: docker rm docker ps -aq开启着的容器是不能被删除的。 查看容器信息&…

【LangChain学习】基于PDF文档构建问答知识库(二)创建项目

这里我们使用到 fastapi 作为项目的web框架,它是一个快速(高性能)的 web 框架,上手简单。 一.创建 FastAPI 项目 我们在IDE中,左侧选择 FastAPI ,右侧选择创建一个新的虚拟环境。 创建成功,会有…

Java 的 Stream

一、创建 Stream 1.1、创建 Stream 流 1.1.1、List 集合获取 Stream 流 Collection<String> list new ArrayList<>(); Stream<String> s1 list.stream(); 1.1.2、Map 集合获取 stream 流 Map<String, Integer> map new HashMap<>(); // …

R语言中的函数24:Combinat:combn(), permn()

介绍 combinat中的combn()和permn()函数可以得到所有的排列组合的情况 combn()函数 combn(x, m, funNULL, simplifyTRUE, …)x – 组合的向量源m – 要取的元素的数量fun – 应用于每个组合的函数(可能为空)simplify – 逻辑的&#xff0c;如果是FALSE&#xff0c;返回一个列…

爬虫如何应对网站的反爬机制?如何查找user-agent对应的值

import requestsurl https://movie.douban.com/top250 response requests.get(url) # 查看结果 print(response)在requests使用一文中我们有讲到&#xff0c;当状态码不是200时表示爬虫不可用&#xff0c;也就是说我们获取不到网页源代码。但是我们还是可以挣扎一下&#xff…

数据结构----哈夫曼树

这里写目录标题 基本概念引子基本概念各种路径长度各种带权路径长度结点的带权路径长度树的带权路径长度哈夫曼树 哈夫曼树的构造理论基础构造思想总结 一级目录二级目录二级目录二级目录 一级目录二级目录二级目录二级目录 一级目录二级目录二级目录二级目录 一级目录二级目录…

云原生K8S------Yaml文件详解

目录 一&#xff1a;K8S支持的文件格式 1&#xff0c;yaml和json的主要区别 2&#xff0c;YAML语言格式 二&#xff1a;yuml 1、查看 api 资源版本标签 2、写一个yaml文件demo 3、创建service服务对外提供访问并测试 4、详解k8s中的port 三&#xff1a;文件生成 1、kubec…

32位M0核单片机XL32F003芯片特征和功能介绍

XL32F003 系列微控制器采用高性能的 32 位 ARMCortex- M0 内核&#xff0c;宽电压工作范围的MCU。嵌入高达64 Kbytes flash和8 Kbytes SRAM存储器&#xff0c;最高工作频率32 MHz。包含多种不同封装类型多款产品。芯片集成多路I2C、SPI、 USART等通讯外设&#xff0c;1路12 bit…

FPGA应用学习笔记----CORDIC 算法和小结

加减移位操作来运算三角函数&#xff0c;开根号&#xff0c;求对数 圆周旋转模式

MySQL数据库表的增删查改 - 进阶

一&#xff0c;数据库约束 1.1 约束对象 not null - 该列不能为空unique - 保证该列的每一行都不一样default - 规定没有给列赋值时的默认值&#xff08;自定义&#xff09;primary key - not null 和 unique 的结合&#xff0c;会给该列添加一个索引&#xff0…

Java-方法

在编程中&#xff0c;我们也可以将频繁使用的代码封装成"帖子"(方法)&#xff0c;需要时直接拿来链接 方法就是一个代码片段. 类似于 C 语言中的 “函数” 方法定义 修饰符 返回值类型 方法名称([参数类型 形参 …]){ 方法体代码; [return 返回值]; } 这里比得C语言…

【ES6】深入理解ES6(1)

一、块级作用域绑定 var声明及变量提升机制 二、字符串和正则表达式 字符串&#xff08;String&#xff09;是JavaScript6大原始数据类型。其他几个分别是Boolean、Null、Undefined、Number、Symbol&#xff08;es6新增&#xff09;。 更好的Unicode支持 1. UTF-16码位 字…

【Hystrix技术指南】(4)故障切换的运作流程

[每日一句] 也许你度过了很糟糕的一天&#xff0c;但这并不代表你会因此度过糟糕的一生。 [背景介绍] 分布式系统的规模和复杂度不断增加&#xff0c;随着而来的是对分布式系统可用性的要求越来越高。在各种高可用设计模式中&#xff0c;【熔断、隔离、降级、限流】是经常被使…

接口测试之Jmeter+Ant+Jenkins接口自动化测试平台

平台简介 一个完整的接口自动化测试平台需要支持接口的自动执行&#xff0c;自动生成测试报告&#xff0c;以及持续集成。Jmeter支持接口的测试&#xff0c;Ant支持自动构建&#xff0c;而Jenkins支持持续集成&#xff0c;所以三者组合在一起可以构成一个功能完善的接口自动化…

【数学建模】--时间序列分析

时间序列分析概念与时间序列分解模型 定义&#xff1a;时间序列也称动态序列&#xff0c;是指将某种现象的指标数值按照时间顺序排列而成的数值序列。时间序列分析大致可分成三大部分&#xff0c;分别是描述过去&#xff0c;分线规律和预测未来&#xff0c;本讲将主要介绍时间序…

两天入门Linux、搭建Spring环境 第一天

一、Linux简介 1.什么是Linux 一个操作系统&#xff0c;未来公司里面会用到、接触的新操作系统。 2.为什么学Linux (1)个人职务需要&#xff0c;肯定会接触到Linux (2)职业发展&#xff0c;以后的发展肯定需要掌握Linux的许多使用方法 3.学哪些内容 (1)Linux基本介绍 (2)…

圆圈中最后剩下的数字——剑指 Offer 62

文章目录 题目描述解法一题目描述 解法一 class Solution

本地构建包含java和maven的镜像

目录 1.前提条件 2.下载 2.1.创建Dockerfile 3.构建镜像 参考文章 1.前提条件 本地环境需要的系统和软件 win10 Docker Desktop Powershell 图1 Win10安装Docker后&#xff0c;直接在Powershell使用Docker命令 有些Developer不习惯win10系统&#xff0c;却想要使用Lin…