软件测试 —— Linux基础命令行
一、Linux介绍1、为什么要学习Linux?2、 什么是操作系统?3、 Linux系统,Linux 发⾏版本4、Linux文件路径二、远程连接操作1、常见的远程连接⼯具2、远程连接基本步骤2.1、获取服务器 IP 地址2.2、远程连接⼯具设置步骤3、远程连接注意事项3.1、修改连接信息选项三、Linux常用命令1、Linux命令学习原则2、Linux命令的基本组成3、相对路径和绝对路径4、案例1
目录
4、案例1: ls/pwd/cd/touch/mkdir/cp/mv/rm
4.1、Part1: ls/pwd/cd/touch/mkdir
4.4、Part4: mv/touch 创建多个⽂件/rm 删除⽂件和⽂件夹及所有⽂件
5 、案例2: cat/more/grep/重定向/管道符/clear
6.3、扩展: 通过 head 和 tail 同时使⽤获取特定⾏和⾏之间信息
7.2、重启和关机: 如果账号没有对应权限, 可能⽆法执⾏重启和关机操作
10、案例8: which/su/passwd/exit/who
14.1、Part1: tar/gzip 打包压缩和解压解包
一、Linux介绍
1、为什么要学习Linux?
1、为了将来⼯作中与服务器设备进⾏交互⽽准备的技能(远程连接/命令的使⽤)
2、Linux命令行非常值得学。今天学会的技能,在10年后仍然有用。换言之,命令行是能够历经时间考验的
2、 什么是操作系统?
所有硬件设备组装完成后的第⼀层软件, 能够使⽤户使⽤硬件设备的软件 即为操作系统。
常见操作系统:
1. 桌⾯操作系统: Windows/macOS/Linux
2. 移动端操作系统: Android(安卓)/iOS(苹果)
3. 服务器操作系统: Linux/Windows Server
4. 嵌⼊式操作系统: Android(底层是 Linux)
3、 Linux系统
在服务器端最常⻅的操作系统类型。
Linux 发⾏版本
说明: 在原版 Linux 系统的基础上, 额外增加⼀些常⽤软件的操作系统
注释: 类似与原⽣安卓系统和现⾏的华为系统/⼩⽶系统等之间的关系
常见类型:
4、Linux文件路径
说明: 不同于 Windows 系统的⽂件路径的起点是盘符, Linux 系统的路径起点 是'/'(根⽬录)
注意:
1. / 为根⽬录, 是所有⽂件的路径的起点
2. 根⽬录下的所有第⼀层级的⽂件夹, 均不能随意进⾏修改操作
3. 掌握常⽤⽬录的作⽤即可
4. / 根⽬录, /home 普通⽤户所在⽂件夹, /root 系统管理员所在⽂件夹
5. 其余⽬录, 可以现⽤现查即可
如图 :
二、远程连接操作
说明: 通过[远程连接⼯具]连接到服务器的操作即为远程连接
条件:
1、 服务器的 IP 地址
2、 服务器的账号和密码
注意: 必须要确保有⽹络连接条件
1、常见的远程连接⼯具
1. FinalShell(推荐): 功能强⼤, 有颜值, 好操作(⾼级功能需要订阅)
2. XShell: 个⼈⽤免费/商⽤收费
3. Putty: 免费开源
4. SecureCRT: 收费
5. MobaXterm: 免费
6. WinSCP:免费开源
2、远程连接基本步骤
1. ⼊职后需要向相关⼈员(运维/开发)获取服务器 IP 地址及账号密码等信息
2. 配合远程连接⼯具(根据公司要求使⽤对应⼯具), 配置连接使⽤服务器即可
2.1、获取服务器 IP 地址
注意: 在⼯作中此步骤可以省略, 可以直接向相关⼈员获取 IP 地址及账号和密码
1、虚拟机系统中的桌⾯上⿏标右键打开终端
2、通过 ifconfig 命令获取 IP 地址信息
3、在本机上的命令⾏内使⽤ ping 命令⾏测试下连通性
2.2、远程连接⼯具设置步骤
注意:以 FinalShell 连接工具为例
1、如图:新建 -> SSH 连
2、如图:设置连接信息
远程连接依赖的命令: SSH
注意: 有密钥,可直接使⽤ SSH 命令远程连接服务器
3、如图:点击连接
4、如图:提示保存秘钥,接受并保存
5、如图:提示连接成功
3、远程连接注意事项
3.1、修改连接信息选项
注意:如果服务器IP地址发生变化,可直接通过修改更新IP地址
如图:
三、Linux常用命令
1、Linux命令学习原则
1、Linux的启蒙学习不存在任何捷径,不是因为它太难,而是它涵盖的内容太多
2、写好⾃⼰的笔记, 以备随时查阅使⽤即可
3、没学过,可能会⽤到, 现查现⽤
注意:
1. 不要去死记硬背 Linux 命令
2. 务必要明确命令的基本组成形式
2、Linux 命令的基本组成
# 命令 [-选项] [参数]
command [-options] [parameter]
说明:
command : 命令主体
[-options] : 命令选项(可选), 根据命令可以显示更加丰富的数据
[parameter] : 命令参数(可选), 命令的操作对象,⼀般⽂件、⽬录、⽤户 和进程等都可以作为参数被命令操作
3、相对路径和绝对路径
说明: 在 Linux 系统中, 可以根据如下特点区分相对路径和绝对路径
相对路径: 凡是路径信息以 '.' 或 '..' 开头的均为相对路径
绝对路径: 凡是路径信息以 '/' 或 '~' 开头的均为绝对路径
注释:
. : 当前路径下(⼀般会省略)
.. : 上⼀层⽬录
/ : 根⽬录
~ : 当前⽤户的家⽬录
4、案例1: ls/pwd/cd/touch/mkdir/cp/mv/rm
4.1、Part1: ls/pwd/cd/touch/mkdir
ls:查看当前目录下有哪些文件和文件夹
pwd:查看当前路径位置
cd:切换到xx目录
touch:创建文件
mkdir:创建文件夹
4.2、Part2: cd其他⽤法和mv
cd ~ :当前用户的目录下,~ 当前用户目录的路径信息
cd / : 当前根目录下, / 当前根目录的路径信息
cd - : 返回上一次所在的路径
cd .. : 返回上一级路径
mv :默认是用来移动文件到某一路径下的,但是如果目标文件名不是文件夹名称或文件名不存在,即为修改文件名操作
4.3、Part3: cp 复制⽂件和⽂件夹
-i :提示文件是否覆盖
如果是文件夹,需要使用 -r
4.4、Part4: mv/touch 创建多个⽂件/rm 删除⽂件和⽂件夹及所有⽂件
注意:
1、危险操作需要交互删除: -i
2、删除目录:-r
3、删除的文件不存在也不会提示信息,强制删除:-f
4、*,通配符,表示目录下的任意文件
5、删除目录下所有文件:rm -rf /*
5 、案例2: cat/more/grep/重定向/管道符/clear
5.1、Part 1: cat/重定向
显示所有⽂件和详细信息:ls -al 路径信息
将命令执⾏结果信息输出到⽂件中 : 重定向 >
查看⽂件内容(较少内容⽂件):cat 文件
追加重定向:>>
cat 合并查看多个⽂件内容
5.2、Part2: less/more 分屏显示⽂件内容
说明:
less和more都常用于查看内容较多的文件信息
快捷键,两个命令基本操作快捷键相同:
向下翻页:空格键
向上翻页:B
退出查看:Q
注意:
想要以分屏样式查看大量内容的文件信息,文件的内容至少应该超过当前终端窗口的显示大小。
5.3、Part3: grep/|管道符/clear
clear:清除当前终端窗口的内容
grep 内容 文件名:从文件中查找包含特定内容的信息
通过管道符 | 可以方便快捷的讲两条指令结合起来,以省去需要先将结果写入到文件,再进行查找操作
注意:在测试工作中,我们只需要掌握管道符后侧,常使用的命令为grep
6、案例3: head/tail/tail -f
6.1、Part 1: head/tail
需求 1: 准备⼯作
head 和 tail 的使⽤:
head -数字 文件名:查看特定文件前几行内容
tail -数字 文件名:查看特定文件后几行内容
6.2、Part2: tail -f 实时查看⽇志⽂件内容
准备⼯作: 模拟⽇志⽂件内容的实时变化
实时查看⽇志⽂件内容变化
tail -f 文件名:实现实时监控文件内容变化的操作
注意:应用场景,动态查看日志文件内容
从实时变化的⽂件中获取特定⾏数内容
tail -数字f 文件名
6.3、扩展: 通过 head 和 tail 同时使⽤获取特定⾏和⾏之间信息
需求: 获取某⽂件 11-15 ⾏的信息
7、案例4: 重启关机/查看系统信息
7.1、查看系统信息
查看当前系统内核版本信息:cat /proc/version
查看当前系统发行版本信息:cat /etc/redhat-release
注意:
1. 不同系统的版本信息查看都是通过查看特定文件内容来获取,不同系统文件名可能不一样
2. 其他系统需要获取系统版本信息,可以搜索:系统类型 + 内核版本 / 发行版本,例如:CentOS内核版本查询
7.2、重启和关机: 如果账号没有对应权限, 可能⽆法执⾏重启和关机操作
reboot:重启系统
poweroff / shutdown:关闭系统
8、案例5: ps/kill/top
进程
说明: 在任何系统中, 运⾏软件程序时, 都会有⼀个对应的进程信息存在, 如果结束掉进程, 就可以实现关闭对应软件程序的操作, 尤其是在服务系统(Linux) 中
8.1、Part1: 查看进程信息/⽂件上传操作
查看进程信息
查看当前系统下的进程信息:ps -aux
PID:进程ID,一般情况下,软件程序的PID值都是唯一的
CPU:CUP使用率
MEM:内存使用率
COMMAND:软件程序名称
上传⽂件到服务器
Linux 系统中结束或关闭程序的基本步骤
1. ps -aux | grep 程序名 : 获取⽬标程序的进程ID(PID)
2. kill -9 进程ID : 强制结束或关闭对应软件程序
8.2、Part2: 运⾏程序/获取进程ID/结束程序
运⾏程序
注意:如果提示文件权限不足,可使用 chmod 755 程序名 修改文件权限
运⾏结果和程序介绍: 最好在系统端运⾏程序, 远程连接⼯具内进⾏操作
获取进程 ID
注意:通过查询系统内的所有进程信息,并配合grep命令进行信息过滤
结束程序
kill -9 进程ID:通过进程ID结束或关闭对应软件程序
-9:强制结束
服务端显示以杀死!
使⽤命令确认程序已经退出
8.3、Part3: 命令⾏形式的任务管理器
top:命令形式的任务管理器(动态查看进程信息)
9、案例6: netstat/lsof
端口号
说明: 想要连接⾄计算机, 需要使⽤ IP 地址, 再想获取在计算机上运⾏程序, 需要通过端⼝号 注意: 同⼀台计算机不能有多个程序同时使⽤同⼀个端⼝号, 因此在运⾏程序 时, 如果提示"端⼝号被占⽤", 那就需要先找到占⽤端⼝号的程序并结束掉, 然 后才能运⾏⽬标程序.
常⻅见端⼝号:
1. HTTP: 80
2. HTTPS: 443
3. SSH: 22
4. MySQL : 3306
9.1、Part1: netstat 查询端⼝号信息
使⽤普通⽤户查看不了 PID 和程序名称
netstat -anptu
注意:使用netsat命令时,最好使用root用户,否则PID一栏可能没信息
直接使⽤命令 -> 查看系统内已开放的端⼝号
netstat -anptu
通过端⼝号获取对应程序及进程 ID
注意:配合grep命令过滤信息,获取占用某一端口号的程序及应用的进程ID,再使用kill命令结束端口占用
9.2、Part2: lsof 查询端⼝号信息
使⽤普通⽤户 -> 命令运⾏⽆结果
注意:该命令必须使用root用户权限,普通用户使用无任何结果
通过端⼝号获取对应程序及进程 ID : 注意命令选项的语法要求!
lsof -i:3306(端口号)
10、案例8: which/su/passwd/exit/who
10.1、which(查看程序位置)
10.2、 su(切换⽤户)
su - : 普通用户 -> root用户:需要输入root用户的密码(Linux系统下密码没有显示效果,输入回车即可);
su - admin : root用户 -> 普通用户:无需输入密码
注意:切换普通用户时,su和 - 与普通用户名之间均有空格
10.3、who(查看⽤户信息)
whoami :查看当前的用户名
who -q :查看当前系统中所有登录用户的信息
10.4、exit
退出终端窗⼝
退出远程连接
退出⽤户
11、 chmod 修改⽂件权限
11.1、⽂件权限的解读法
对照表
11.2、修改⽂件权限: 数字法[掌握]
权限对应数值
案例实现
11.3、修改⽂件权限: 字⺟法[了解]
组别: u: 拥有者/ g: ⽤户组/ o: 其他⼈/ a: 以上全部
修改: +: 增加权限/ -: 删除权限/ =: 赋予权限
权限: r: 可读/ w: 可写/ x: 可执⾏/ -:⽆权限
11.4、⽂件权限修改注意事项
1. 必须明确⽂件权限的含义(读懂)
2. 使⽤数字法还是字⺟法全凭个⼈喜好
3. 尽量注意不要随意赋予⽂件最⾼权限: 数字法(777)/字⺟法(rwxrwxrwx)
4. 建议适当修改⽂件权限: 数字法(755)/字⺟法(rwxr-xr-x), 除拥有者外其 余⽆可写权限, 以保证⽂件内容安全
12、案例9: find 查找⽂件
find 查找路径信息 name目标文件名
注意:
1. 目标文件名可以省略引号
2. 文件名部分支持使用 * 实现模糊匹配
3. 如果当前用户对目标路径没有访问权限,则无法执行查找文件动作
13、案例10: ln -s 链接⽂件
注意: 需要使⽤ -s 创建软链接(类似 Windows 系统下的快捷⽅式)
在Linux系统存在两种链接文件方式
1. ln -s 原文件名 链接文件名:软连接
2. ln 原文件名 链接文件名:硬链接(类似复制文件)
注意:删除原文件,链接文件会失效
硬链接
14、案例11: tar/gzip/zip/unzip
14.1、Part1: tar/gzip 打包压缩和解压解包
注意:不要在目标文件夹内部,执行打包压缩文件操作,返回上一级目录,cd -
tar -zcvf 包名.tar.gz 目标文件(z:gzip压缩、c:打包、v:显示过程、f:指定文件)
tar -zxvf 包名.tar.gz C解压目录(z:gzip解压、x:解压、v:显示过程、f:指定文件、C:勇于指定解压目录)
14.2、Part2: zip 压缩/unzip 解压
zip -r 压缩包名 目标文件
注意:压缩包名的后缀.zip可省略
unzip d 解压路径 压缩包名
注意:解压需要先指定的解压路径,也可以直接在当前目录下解压压缩文件
15、案例12: vi 命令⾏⽂本编辑器
基本操作流程
命令模式
输⼊模式
末⾏模式
四、yum 软件包管理⼯具
yum( Yellow dog Updater, Modified)是⼀个在 Linux 系统中常⽤的软件包管理器。 yum 提供了查找、安装、删除某⼀个、⼀组甚⾄全部软件包的命令,⽽且命令简洁⽽⼜好记。
yum常⽤命令:
yum list: 列出所有可安裝的软件清单
yum search: 查找软件包
yum install <package_name>: 安装指定的软件
yum update <package_name>: 更新指定的软件
yum update: 更新所有软件
yum remove <package_name>: 删除软件包
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)