软件测试人员需要了解的Linux相关技术

414 阅读9分钟

Linux数据库课程背景

Linux重要性

Linux是开源、高性能的操作系统,是企业级项目部署的主流选择,测试工作中需要与Linux操作系统交互。

数据库是数据存储的地方,是企业级项目必不可少的重要组成部分。

测试人员需要做什么?

 部署测试环境

 通过查看日志定位问题

 操作数据库进行数据校验或者数据准备

 监控服务器性能指标......

常见操作系统

(1)桌面操作系统:Linux、Windows系列、MacOS

(2)嵌入式操作系统:Linux

(3)服务器操作系统:Linux、UNIX、Windows server

(5)移动设备操作系统:Android、iOS

Linux操作系统的特点

开源免费、安全稳定、可移植性好、高性能

Linux使用领域

l 应用服务器

l 数据库服务器

l 网络服务器

l 虚拟化云计算

l 嵌入式领域

l 个人PC

l 移动手机

Linux文件系统和目录

Linux是树形结构的文件系统,其中/是系统的根目录,其他所有目录都是它的子节点。

Linux主要目录介绍:

/ : 根目录,唯一

/home : 用户目录

/root : 系统管理员root目录

/usr : 应用程序

/etc : 系统配置

/boot : 内核文件

/tmp : 临时文件

/bin : 放命令工具

Linux远程链接【操作】

在实际工作中,Linux服务器一般用的是云服务器,要对Linux服务器进行相关操作,必须通过远程连接的工具连接到Linux服务器。

远程连接Linux服务器之前,必须要知道Linux服务器的IP地址,以及SSH的端口(默认:22)

查看ip地址:ifconfig

查看ssh的端口:netstat –anopt|grep sshd

如何远程控制对方的电脑?

(1)对方开启服务:netstart -anpt|grep ssh

(2)需要知道对方的IP和端口:ifconfig image.png (3)自己的电脑ping通对方的电脑: ping 对方的IP image.png

使用远程连接工具finalshell

(1)安装finalshell,百度上查阅,安装很方便;

(2)打开工具,选择SSH连接,填写IP地址、账号密码等信息;

image.png

image.png (3)连接成功如下图所示:

image.png

Linux常用命令

命令格式介绍

格式:command [-options] [parameter]

Command: 命令名称

[ ] 表示可选项

[-options] : 命令选项, 可有可无

[Parameter]: 命令参数,可以不传,也可以传一个或多个

终端命令

(1)--help查看命令的帮助信息,例如:ls --help

(2)格式:command --help 显示 command 命令的帮助信息

(3)格式:man command 查看command命令的使用手册

man操作键说明:

空格键:显示手册的下一页

q: 退出

/word: 搜索word字符串

文件和目录常用命令(常用)

(1)查看目录内容--ls

命令格式: ls [-lah(选项)] [文件或目录]

ls参数说明:

-l:以列表方式详细显示内容信息

-a:显示所有文件,包含隐藏文件及目录

-h:配合-l显示出文件的大小,显示更加人性化

常用参数组合:

ls :列举当前目录的文件内容

ls -l

ls -a

ls -lh :h和l必须组合使用

ls -lha :以列表方式,更加人性化,显示所有文件

ls -lha /usr/bin :查看/usr/bin文件夹里面的内容

常用通配符:

* :表示0到多个任意字符

image.png

? :表示一个任意字符

image.png

[abcd] :表示可以匹配a、b、c、d中的任何一个字符

image.png

[a-f] :匹配从a到f范围内的的任意一个字符

image.png

新建文件:touch 文件名,如果创建的文件存在,则会修改时间 屏幕截图 2022-06-14 113603.png

清屏: clear 快捷键:ctrl+l

(2)切换目录--cd

命令格式:cd [目录名称]

cd或者cd ~ : 切换到当前用户的主目录(/home/用户目录)

cd . : 切换到当前目录

cd .. :切换到上一级目录

cd - :切换到上一次所在的目录

注意:文件及目录名称区分大小写

绝对路径:以根路径或家路径开头,表示从根目录/家目录开始的具体目录位置,是唯一的;

相对路径:不以根路径或者家目录开头,表示相对当前目录所在的目录位置,有参照物。

pwd:显示当前路径

(3)创建目录--mkdir

命令格式:mkdir 目录名称

通过-p的选项,实现多个层级目录创建,例如;mkdir -p dir1/dir2/dir3

如果创建的目录名称存在,则创建失败

(4)删除文件或目录--rm

命令格式:rm [-ifr(选项)] 目录名或文件名

选项参数说明:

-i : 表示交互式执行,删除前会询问是否删除。

-f : 表示强制删除,忽略不存在的文件,无需提示。

-r : 表示删除文件夹及文件夹下所有的内容。

注:使用rm删除文件时无法恢复,建议使用rm时跟上 –i 参数

(5)复制文件—cp

命令格式: cp 源文件 目标文件

常用选项说明:

-f : 强制覆盖已存在的目标文件而不提示

-i :覆盖时会提示用户确认

-r (常用): 若源文件为目录,则复制该目录下的所有内容

-v : 显示复制的进度

(6)移动文件—mv

命令格式: mv 源文件 目标文件

mv命令除了移动文件之外还可以用来修改文件名称

image.png (7)查看文件命令

  1. cat 文件名: 适用于查看较少内容的文件,可以用来查看文件、创建文件、合并文件、追加文件等功能

常用选项说明:

-b : 对非空行输出行编号

-n : 对所有行输出行编号

  1. more 文件名: 适用于查看内容较多的文件,用于分屏显示文件内容

  2. grep 文件名: 适用于查看内容较多的文件

常用选项说明:

-v : 显示不包含匹配文本的所有行(相当于取反)

-n : 显示匹配的行及行号

-i : 忽略大小写

grep 常用正则表在式:

^a : 搜索行首内容以a文本开头的行

lo$: 搜索行尾内容以lo文本结尾的行

[Zz]hangsa[Nn]: 匹配[]中的任意一个字符 image.png

(8)重定向命令--->、>>

可以将显示在终端的内容通过重定向添加或追加到另一个文件中

> 覆盖原文件中的内容

>>追加到新文件中,不会覆盖文件中原有的内容

例如:
ls -l > aa.txt
ls –l >> aa.txt
cat 1.txt 2.txt > 3.txt   #把前两个文件中的内容合并放到3.txt中

(9)其他命令—管道符号 |

将一个命令的输出结果通过管道做为另一个命令的输入

常用的管道命令:

more :分屏显示执行结果

grep : 通过grep过滤执行结果的内容

image.png

(10)其他命令—pwd、clear、which、 echo

pwd:显示当前所在的目录

clear:清除当前屏幕终端所有内容

which 工具名称:查找工具或者程序的安装位置

echo:回显

信息系统相关命令

(1)重启命令: reboot

(2)关机命令: shutdown

(3)查看系统进程 -- psps –aux常用

image.png

(4)实时动态查看系统进程--top image.png shift+m :根据内存的大小降序显示进程信息

shift+P :根据CPU使用率大小降序显示进程信息

q : 退出top命令 或者按 ctrl+c也可以退出

(5)关闭进程:kill -9 进程号常用

(6)查看系统监听端口-- netstat

命令格式: netstat [-anptu]常用) 例如:netstat -anp |grep mysql(常用image.png

(7)查看系统中正在使用端口的详细信息

lsof -i:3306:列出使用端口3306的进程信息

(8)查看日志信息命令

head 文件名:默认显示日志文件有前10行内容

tail 文件名:默认显示日志文件最后10行内容

tail -f 文件名常用): 实时显示日志的文件信息

用户权限和管理相关命令

(1)权限的基本概念

Linux系统中文件和目录的权限如下:

image.png

权限说明:

如下图:首字母d表示目录,l表示链接,-表示普通文件

权限分为三组:拥有者权限、组权限、其他用户权限 image.png

(2)修改用户权限chmod-字母法

命令格式:chmod u+r 文件名

用户类型说明:

u : 表示文件所属用户

g : 表示文件所属的用户组

o : 表示其他用户

a : 表示所有用户

权限设置说明:

+ : 增加权限

- : 撤消权限

= : 设定权限

image.png

(3)修改用户权限chmod-数字法(常用)

数字法命令格式: chmod 777 文件名 ,表示全部的权限。

image.png

(4)用户管理-切换用户、设置用户密码

su 用户名 : 切换到指定用户下

passwd : 用于设置当前用户的密码

passwd 用户名 : 用于设置指定用户的密码

exit:退出登录账户

其他常用命令

(1)查找文件命令 --find [路径] –name 文件名

find . -name test.txt 查找当前目录下所有名为test.txt的文件

find . -name '*.txt' 查找当前目录下所有后缀为.txt的文件

(2)打包和压缩 – 压缩/解压缩(gzip)

gzip命令格式: gzip [选项] 被压缩文件

压缩文件: tar -zcvf 打包文件.tar.gz 被压缩的文件/路径...

解压缩文件: tar -zxvf 打包文件.tar.gz

解压缩文件到指定目录: tar -zxvf 打包文件.tar.gz -C 目标路径

image.png

(3)打包和压缩 – 压缩/解压缩(zip/unzip)

命令格式:

压缩文件: zip [-r] 压缩文件名 被压缩的文件

解压缩文件:unzip -d 解压后的目录 打包文件.zip

vi编辑器简介

vi是linux系统下的命令行工具,对于测试人员来说,了解vi编辑器的三种模式并会简单的使用即可,不需要深入学习。

vi编辑器三种工作模式

命令行模式:通过对应的快捷键或者命令来管理文件(按ESC就可以回到命令模式)

插入模式:主要用来对文件的增加、修改操作(i进入编辑模式)

末行模式:用来保存文件或者退出文件(命令模式下按 shift+; 会进入到末行命令模式,wq!保存文件并退出vi编辑器)

基本操作指令:

yy: 复制当前行,n yy 复制 n 行

p: 在光标所在位置向下新开一行,粘贴

dd: 删除光标所在行

linux中与数据库相关的命令

(1)查看系统监听端口:netstat -anptu | grep 3306 image.png

(2)登录数据库:mysql -h192.168.224.130 -P3306 -uroot -p123456 image.png

(3)查看所有数据库:show databases; image.png

(4)下载mysql(5.7)的yum安装源文件:wget 'https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm'

(5)安装mysql的yum源文件:rpm -Uvh mysql57-community-release-el7-11.noarch.rpm

(6)安装MySQL:yum -y install mysql-community-server

(7)启动MySQL服务:systemctl start mysqld

-------本文内容不用于商业目的,如涉及知识产权问题,请随时联系!!!-------

-----------------祝福所有人学有所成,工作顺利,万事如意!!!----------------