一、linux操作系统介绍

测试需要做的事:

部署测试环境              ---> linux常用命令
通过查看日志定位问题
操作数据库进行数据校验或者数据准备     --->数据库增删改查
监控服务器性能指标

扩展:如何连接远程服务器?
1、首先要知道远程服务器ip以及端口(ssh一般为22)。

对方会告诉你ip地址以及端口号
或者:
在远程服务器查ip--- (linux用)ifconfig或者ip addr (ipconfig是windows用)
查端口号--- netstat –anopt|grep sshd

2、ping ip 以及百度。看是否能ping通
3、使用xshell(要破解)、finalshell(免费,但占内存)、windterm(据说免费,好用,没试过)或者别的工具远程连接

1、概念


扩展:
服务器操作系统中unix与linux区别:有money用unix,没钱用linux。

linux特点:
开源免费
安全稳定
可移植性好
高性能
linux使用领域:
应用服务器
数据库服务器
网络服务器
虚拟化云计算
嵌入式领域
个人PC
移动手机

2、文件和目录结构

树形结构

/ : 根目录,唯一
/home : 用户目录
/root : 系统管理员root目录
/usr : 应用程序
/etc :系统配置
/boot : ٖ内核文件
/tmp : 临时文件
/bin: 放命令,工具
常用快捷键
ctrl+ a  跳到句首
ctrl+ e  跳到句尾
ctrl+ c  中断
ctrl+ l  清屏
tab键  自动补全
ctrl+alt切换主屏
ctrl+alt+Fn+F1/F3切换图形和命令行

二、Linux常用命令

1、 Linux终端命令格式

(1)命令格式:名称 [选项] [参数]

command [-options] [parameter]

command: 命令名称
[ ] 表示可选项
[-options] : 命令选项, 可有可无
[Parameter]: 命令参数,可以不传,也可以传一个或多个

(2)帮助信息命令 man/ - -help

command –help    --- 简洁查看命令帮助信息
man command      --- man更详细点
man命令操作如下:
空格键:显示手册的下一页
Enter键:滚动显示手册的下一行
上下键:显示上一行或者下一行
b: 显示上一页 
f: 显示下一页
q: 退出

2、文件和目录常用命令

(1)查看目录内容 ls

ls [-lah]

-l: 以列表方式详细显示内容信息
-a: 显示所有文件,包含隐藏文件及目录
-h: 配合-l显示出文件的大小
常用通配符:
* :表示0到多个任意字符
? :表示一个任意字符
[abcd] :表示可以匹配a、b、c、d中的任何一个字符
[a-f] :匹配从a到f范围内的的任意一个字符

(2)切换目录 cd

cd或者cd ~ : 切换到当前用户的主目录(/home/用户目录)
cd . : 切换到当前目录
cd .. : 切换到上一级目录
cd - : 切换到上一次所在的目录

注:文件以及目录区分大小写

(3)创建删除操作 touch、rm、mkdir

创建文件
touch 文件名(不存在就创建,存在就更新文件修改时间)

创建目录
mkdir [-p] 目录名称(存在同名就创建失败)
-p 递归创建

删除文件或目录
rm [-rf] 目录名或文件名

-i : 表示交互式执行,删除前会询问是否删除。
-f : 表示强制删除,忽略不存在的文件,无需提示。
-r : 表示删除文件夹及文件夹下所有的内容。
注意:使用rm删除文件时无法恢复,建议加i参数

(4)拷贝和移动文件 cp、mv

复制文件
cp [-r] 源文件 目标文件

-f : 强制覆盖已存在的目标文件而不提示
-i : 交互式复制,覆盖时会提示用户确认
-r : 若源文件为目录,则复制该目录下的所有内容
-v:显示复制进度(一般不用)

移动文件
mv 源文件 目标文件

-f : 强制覆盖已存在的目标文件而不提示
-i : 交互式复制,覆盖时会提示用户确认
-v : 显示复制的进

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

(5)查看文件内容 cat、more、grep

cat 文件名
查看小文件(一次性显示)
可用来查看、创建、合并、追加文件

-n : 对所有行输出行编号
-b : 对 非空行 输出行编号

cat 1.txt  2.txt > 3.txt 合并

more 文件名
内容多,分屏展示,每次显示一页内容

操作键
空格键: 显示文件的下一页内容
Enter键 : 滚动显示文件下一行内容
b : 显示文件的上一页内容(回滚上一页)
f : 显示文件的下一页内容
q : 退出

重点 grep 文件名
查找关键字(正则表达式)

-v : 显示不包含匹配文本的所有行(相当于取反)
-n : 显示匹配的行及行号
-i : 忽略大小写
常用正则表达式
^a : 搜索行首内容以a文本开头的行。 例如: grep –n '^a' 1.txt
ke$ : 搜索行尾内容以ke文本结尾的行。例如: grep –n 'ke$' 1.txt
[Ss]igna[Ll]: 匹配[]中的任意一个字符,搜寻匹配单词为 SignaL、Signal、signaL、signal的行;  例如: grep –n ' [Ss]ign

‘’单引号可加可不加

(6)重定向和管道符 > 、>>、|

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

 覆盖原内容 >    例如:ls -l> 1.txt
 追加原内容后面 >>   例如:ls -l>> 1.txt

管道符号 | :一个命令的输出结果 可以通过管道做为 另一个命令的输入

常用的管道命令:
more :分屏显示执行结果            例如: ls -l /usr/bin | more
grep : 通过grep过滤执行结果的内容   例如: ls /usr/bin | grep ‘^a'

(7)其他 pwd、clear、which、echo

pwd命令 显示当前所在的目录。
clear命令 用于清除当前屏幕终端所有内容。 快捷键 ctrl+l
which命令 用于查找工具或者程序的安装位置 如:which ls
echo 写什么显示什么,和管道一起使用

如:echo ' ' > /xx    删除xx文件内容 

3、系统信息相关命令

(1)重启reboot与关机

reboot:立即重启操作系统
shutdown:执行命令后,提示一分钟后关闭操作系统。(不常用)

shutdown –r now :重新启动操作系统,shutdown会给别的用户提示
shutdown -h now : 立刻关机,其中now相当于时间为0的状态
shutdown -h 20:25 :系统在今天的20:25 会关机
shutdown -h +10 :系统再过十分钟后自动关机

(2)进程信息ps、top、kill

ps -aux
重点是user和pid(进程号)。windows快捷键ctrl+shift+esc

-a : 显示终端上的所有进程,包括其他用户的进程
-u : 显示进程的详细状态
-x :显示没有控制终端的进程

结合管道一起用,如:ps –aux|grep bin
mac用:ps -ef|grep bin

top命令用于实时动态查看系统进程相关信息(性能测试与排查问题)

M(shift+m) :根据内存的大小降序显示进程信息
P (shift+p):根据CPU使用率大小降序显示进程信息
q : 退出top命令 或者按ctrl+c

kill -9 进程号

-9 强制关闭
进程号可以通过ps或者netstat等命令获取到

(3)端口信息netstat、lsof(需要root权限)

netstat [-anptu]
查看当前系统网络状态及对应软件使用的端口

-a : 显示所有已打开的端口
-p : 显示对应的进程id
-n : 用数字显示对应的端口,不用别名显示
-t : 显示所有tcp协议端口
-u : 显示所有udp协议端口

结合管道一起用,如:netstat –anp|grep bin

lsof -i:端口号

lsof -i :如果不给出条件,则默认显示所有进程打开的所有
lsof -i:3306 :列出使用端口3306的进程信息
提示: 在Linux中启动软件时,会出现因为端口被占用而无法启动的情况,这个时候就需要我们用lsof -i命令查看
安装软件要使用的端口是否被占用

(4)查看日志信息tail -f

head 文件名

默认显示日志文件有前10行内容 (从头开始)
head -20 文件名: 显示日志文件的前20行内容

tail 文件名(常用)

默认显示日志文件最后10行内容。
tail -15 文件名: 显示日志文件最后15行内容。
tail -f 文件名: 实时显示日志的文件信息(常用)

(5)查看操作系统信息cat

cat /proc/version 查看当前操作系统版本信息
cat /etc/issue 查看版本当前操作系统发行信息

4、用户权限和管理

(1)修改用户权限 chmod

Linux通过 ls –l 来查看文件或目录权限

第一行:-文件 d目录 l 链接

剩下9个分三组权限 拥有者权限(u) 用户组权限(g) 其他用户权限(o)

设置全部用户(a)

权限缩写(字母法)代号(数字法)
r4
w2
执行x1
无权限-0
权限设置
+ : 增加权限
- : 撤消权限 
= : 设定权限

(1)数字法(常用)
chmod 755 文件名
(2)字母法
chmod u+r 文件名

(2)新增useradd、查看登录账户who

useradd (-g 用户组) 用户名
例如:useradd -g root admin2
删除用户:userdel -r 用户名
-r是把用户目录删除

(3)切换用户su、设置用户密码passwd

su/su -      切换root
su 用户名    切换指定用户
注意权限,要输密码
passwd : 用于设置当前用户的密码 
passwd 用户名 : 用于设置指定用户的密码 (执行命令的用户必须为root)

(4) 退出登录账户exit

5、其他常用命令

(1) 查找文件命令find

find [路径] –name 文件名
区别grep:
grep找文件里的内容
find找磁盘中的某个文件

路径省略掉表示在当前目录下查找文件。 
文件名可以通过通配符来表示。最好加上" "
find . -name test.sh 查找当前目录下所有名为test.sh的文件 
find . -name '*.sh' 查找当前目录下所有后缀为.sh的文件

(2) 软连接命令ln

ln –s 源文件 链接文件

软连接 源文件要用绝对路径,可以链接目录;源文件删除,软连接就无意义
硬链接  ln命令不带 -s 参数时,创建的是硬链接。硬链接的文件大小与源文件相同,即使删除源文件,链接文件依然存在。硬链接只能是普通文件,不能是文件夹

(3) 打包和压缩命令tar

1)打包和压缩命令主要用于备份系统中的相关文件。
打包: tar -cvf 打包文件.tar 被打包的文件/路径
解包: tar -xvf 打包文件.

-c : 创建打包文件 
-v : 列出归档解档的详细过程,显示进度
-f : 指定档案文件名称,f后面一定时.tar文件,所以必须放选项最后
-t : 列出档案中包含的文件
-x : 解开档案文件

2)压缩/解压缩(gzip) 重点
是在tar 选项中增加一个 -z 选项来调用gzip实现打包和压缩的过程

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

3)压缩/解压缩(biz2)
在tar 选项中增加一个 -j 选项来调用biz2实现打包和压缩的过程

压缩文件: tar  -jcvf  打包文件  XX.tar.bz2  被压缩的文件/路径... 
解压缩文件: tar -jxvf 打包文件  XX.tar.bz2

4)压缩/解压缩(zip/unzip)

压缩文件: zip [-r] 压缩文件名 被压缩的文件 
解压缩文件:unzip -d 解压后的目录 打包文件.z

6、vi编辑器

vi编辑器的三种模式

命令行模式:快捷键和命令管理文件
插入模式:编辑文件
末行模式:保存或退出文件
末行模式一些命令:
:set nu 显示行号
:set nonu取消行号
:n 跳到第n行
:2,5d  删除第2-5行(删除指定范围的行)

插入模式快捷键
yy 复制
p粘贴
dd剪贴,或者删除

三、环境安装实战

1、连接

使用xshell连接远程云环境(练习使用的是vware虚拟机+centos操作系统)

2、安装


安装方式:
常用:yum在线安装

来源:黑马测试

更多推荐

软件测试基础篇二之linux