测试常用的Linux命令

前言

直接操作硬件

将把操作硬件的代码封装成系统调用,供程序员使用

虚拟机==软件

可以模拟的具有完整硬件系统的功能

可以在虚拟机上安装不同的操作系统

Linux内核只有一个,发行版有很多种

内核来运行程序和管理像磁盘和打印机等硬件设备的核心程序

终端命令---系统调用---硬件

发行版:

包括桌面环境、办公套件、媒体播放器、数据库等应用软件

常见的发行版本:

Ubuntu

Redhead

Fedora

openSUSE

CentOS

Arch

Linux Mint

............

window是单用户操作系统,同一时间只有一个用户操作使用

linux是多用户操作系统,同一时间可以有多用户操作使用

/:根目录

/home:根目录下的用户家目录

/etc:系统配置文件存放的目录

/bin:可执行二进制文件的目录

常用的Linux命令的基本命令

ls list 查看当前文件夹下的内容

pwd print wrok directory 查看当前所在的文件夹

cd [目录名] change directory 切换文件夹

touch [文件名] touch 如果文件不存在,新建文件

mkdir [目录名] make directory 创建目录

rm [文件名] remove 删除指定的文件名

clear clear 清屏

终端命令的格式

[]代表可选

commend [-option] [parameter]

comment:命令名,响应功能的英文单词或单词缩写

[-option]:选项,可以来对命令进行控制,也可以省略

parameter:传给命令的参数,可以是零个、一个或者多个

终端使用小技巧151自动补全:tab键

输入没有歧义

如果存在其他文件、目录、命令,在按一下tab键,会显示所有存在

2、曾经使用过的命令

上、下键可以查找之前使用过的命令

ctrl+c退出选择,并且不想执行当前选中的命令

Ls命令

.代表当前目录

..代表上一级目录

ls -a显示指定目录下所有子目录与文件,包括隐藏文件

ls -l以列表方式显示文件的详细信息

ls -h配合-l以人性化的方式显示文件大小

ls -lha==ls -l -h -a

ls盒通配符的使用

*代表任意个数个字符

?代表任意一个字符,至少一个

[ ]表示可以匹配字符组的任意一个

[abc]匹配a、b、c中任意一个

[a-f]匹配a到f中的任意一个字符

例子

[12345]21.txt==[1-5]21.txt

可以得到121.txt、221.txt、321.txt、421.txt、521.txt

Touch和mkdir命令拓展

touch

如果文件不存在可以创建一个空白文件

如果文件存在,可以修改文件末次修改的信息

mkdir

-p:可以递归创建目录

新建目录名称不能与目录中已有的目录或文件同名

例:

Mkdir -p a/b/c/d 创建a目录即a目录下的b目录即b目录下的c目录即c目录下的d目录

rm

使用rm命令要小心,因为文件删除后不能恢复(直接从磁盘中删除)

-f 强制删除,忽略不存在的文件

-r 递归的删除目录下的内容,删除文件夹时必须加此参数

拷贝和移动文件

Tree [文件名]:以树状图列出文件目录结构

-d:只显示目录

Cp 源文件 目标文件:复制文件或目录

-f:已经存在的目标文件直接覆盖

-i:覆盖文件前提示

-r:若给出的源文件时目录文件,则cp,将递归复制该目录下的所有子目录,目标文件必须为一个目录名

Mv 源文件 目标文件:移动文件或者目录/文件或者目录重命名

-i:覆盖文件提示

桌面上要有readme.txt和dome.txt

文件重命名:mv -i ./Desktop/readme.txt dome.txt

Cat 文件名 concatenate. 查看文件内容、创建文件、文件合并、追加文件内容等功能(适合文件内容少)

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

-n:对输出行的所在行编号

tail命令:查看文本文件

tail -f 文件 #动态打印文本尾端

More 文件名 more 分屏显示文件内容(适合文件内容多)

操作健

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

Enter健:一次滚动手册页的一行

B:回滚一屏

F:前滚一屏

Q:退出

Grep 搜索文本内容 搜索文本文件名 grep 搜索文本文件内容

-n 显示匹配行及行号

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

-i:忽略大小写

^a:行首,搜索以a开头的行

ke$:行尾,搜索以ke结尾的行

echo:会在终端中显示参数的指定文字,通常会和重定向联合使用

重定向

> :表示输出,会覆盖原有的内容

>> :表示追加,会将内容主驾到一有文件的末尾

例子:

echo hello python > a :将hello python输出到a文件中

echo hello python >> a:将hello python输追加到a文件中末尾

管道符

|:一个命令的输出|另一个命令的输入

常用的管道命令有

More:分屏显示内容

Grep:在命令执行结果的基础上查询制定结果

远程管理常用命令

关机/重启

shutdown 选项 时间:关机

-r 重新启动

常用命令示例:

shutdown -r now:现在重启

shutdown now:现在关机

shutdown +10:十分钟后关机

shutdown 22:33:22:33分时关机

shutdown -c:取消关机

查看配置网卡信息

ifconfig configure a network interface 查看/配置计算机当前的网卡配置信息

Ping ip地址 ping 检测到目标ip地址的连接是否正常

网卡

网卡是一个专门网络通讯的硬件设备

IP地址是设置在网卡上的地址信息

ifconfig |grep inet 查看网卡对应的ip地址

Ping 127.0.0.1 检测本地网卡工作正常

远程登陆和复制文件

ssh 用户名@ip secure shell 关机/重新启动

scp 用户名@ip:文件名或路径 用户名@ip:文件名或路径 secure copy 远程复制文件

如果使用windows电脑需要安装好ssh客户端

在ubuntu和Mac中是已经安装好的,不需要安装

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

ssh的端口号是22

Web服务器端口号:80

https端口号:443

ftp服务器端口号:21

Ssh客户端的简单使用

ssh [-p port] user@remote Mac连接Ubuntu上的命令

User:远程机的用户名

remote:远程机的地址

port:ssh server监听的端口

Exit:退出当前用户的登录

windows两款软件

putty和xshell:建议从官方网站下载

用户权限

r:读 代号4

W:写。 代号2

x:执行。 代号1

-:无权限。 代号0

d:代表文件

硬连接数,就是有多少种方式,可以访问到当前目录/文件夹

u:拥有者

g:组

Chmod +/-rwx 文件名/文件:修改目录或者文件的权限

超级用户(root)

对所有资源具有访问权限

一般linux安装的过程中,系统会自动创建一个用户账号,而这个默认的用户就称为"标准用户"

组管理

提示:创建组/删除组的终端命令都需要通过sudo执行

groupadd 添加组

groupdel 删除组

Cat /etc/group 确认组信息(etc目录专门来保存系统的配置文件)

Chgrp -R 组名 文件/目录名 修改文件/目录的所属组

创建用户

Useradd -m -g 组 新建用户名 --添加新用户。 -m:自动建立用户家目录。 -g:指定用户所在的组,否则会建立一个同名的组

Passwd 用户名 设置用户密码。 如果是普通用户,直接用passwd,可以修改自己的账户密码

Userdel -r 用户名。 删除用户。 选项会自动删除用户的家目录

Cat /etc/passwd | grep 用户名 确认用户信息 创建用户后,用户信息会保存在/etc/passwd文件中

创建用户或者密码时,需要超级权限sudo

切换用户命令

Su - 用户名 切换用户,并且切换目录 -可以切换到用户家目录,否则保持位置不变

Exit 退出当前登陆

修改文件权限

Chown 修改拥有者

chgrp 修改组

Chmod 修改文件或目录权限

Chown 用户名 文件名/目录名

Chgrp -R 组名 文件名/目录名 -R:递归修改文件/目录组

Chmod -R 755 文件名/文件:修改目录或者文件的权限

常用三种权限

777 ugo都可以rwx

755 u可以rwx go可以r-x

644 u可以rw- go可以r--2

系统信息相关命令

时间日期

date

cal

磁盘和目录空间

df

du

进程信息

ps

top

kill

时间日期

Date 查看系统时间

Cal calendar查看日历 -y:可以查看一年的日历

磁盘信息

df -h disk free显示磁盘剩余时间

du -h [目录名] disk usage 显示目录下的文件大小

-h 以人性化的方式显示文件大小

进程信息

ps aux process status查看进程的详细状况

a:显示终端上的所有进程,包括其他用户的进程

u:显示进程的详细状态

x:显示没有控制终端的进程

top 动态显示运行中的进程并且排序

退出top直接输入q

Kill [-9] 进程代号 终止指定代号的进程,-9:表示强行终止

Kill杀死进程时,不要终止root身份开启的进程,防止系统崩溃

查找文件

Find [路径]-name "*.py" 查找指定路径下扩展名是.py的文件,包括子目录

例子

Find -name '*1*' 查找文件或者目录中包含1的文件

Find -name '*.txt' 查找以.txt为尾缀的文件

Find -name '1*' 查找文件或者目录中以1开头 的文件

打包压缩

windows常用rar

Mac常用zip

linux常用tar.gz

打包/解包

打包文件

tar -cvf 打包文件.tar 被打包的文件/路径。。。 #如果被打包文件有多个可以在文件与文件之间空格

解包文件

tar -xvf 打包文件.tar

C:生成档案文件,创建打包文件

x:解开档案文件

v:列出归档解档的详细过程,显示进度

f:指定档案文件名称,f后面一定是.tar文件,所以必须放选项最后

f必须放最后,其他选项顺序可以随意

压缩/解压缩

tar与gzip命令结合可以使用时限文件打包和压缩

gzip压缩tar打包后的文件,扩展名一般用xxx.tar.gz

tar命令中有一个选项-z可以调用gzip,实现压缩和解压缩功能

压缩文件

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

解压缩文件

tar -zxvf 打包文件.tar.gz

解压缩到指定路径

tar -zxvf 打包文件.tar.gz -C 目标路径

-C:解压缩到指定目录,注意:要解压缩的目录必须存在

bzip2

tar与bzip2命令结合可以使用实现文件打包与压缩

tar命令中又一个选项-j可以调用bzip2

压缩文件

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

解压缩文件

tar -jxvf 打包文件.tar.bz2

解压缩到指定路径

tar -jxvf 打包文件.tar.bz2 -C 目标路径

Vi--终端中的编辑器

vi与vim

vi:visual interface 文本编辑器

特点:

没有图形界面的功能强大的编辑器

只能进行文本编辑

不支持鼠标操作

没有菜单

只有命令

vim = vi improved

vi打开和新建文件

vi 文件名 如果文件存在打开文件,如果不存在,则新建文件

yy+19p:在vim中复制19遍

U:撤销上一步

ctrl+R:恢复上一步操作

vi 文件名 +行数 打开文件并且定位行

vi三种工作模式

打开文件(vi 文件名)--命令模式-(i:insert)->编辑模式-(esc)->命令模式

命令模式-(shift+;)->末行模式-(esc)->命令模式

关闭文件(wq:write&quit)

注释:touch bar的Mac电脑上,按esc不方便,通常使用 (ctrl+[) 代替

末行模式命令

w:write 保存

q:quit 退出

q!:强行退出,不保存退出

Wq:write&quit 保存并退出

x:保存并退出

插入命令

i:insert 在当前字符前插入文本

I:insert 在行首插入文本

a:append 在当前字符后添加文本

A:append 在行末添加文本

o:在当前行后插入一空行

O:在当前行前面插入一空行

o #添加新的一行

G #移动到文件最后一行行首

gg #移动到文件的开头

按ctrl+f #往下翻一页

按ctrl+b #往上翻一页

dd #删除光标所在行

3dd #删除光标所在位置的往下3行,包括光标所在行

yy #复制光标所在行

p #黏贴(包括前面复制操作或者删除操作的内容)

u #假如误操作一个指令,可以马上按u,进行撤销,可以连续按u,撤销多个之前做过的操作

作为一个软件测试的过来人,我想尽自己最大的努力,帮助每一个伙伴都能顺利找到工作。所以我整理了下面这份资源,现在免费分享给大家,有需要的小伙伴可以关注【公众号:开心螺蛳粉】自提!

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

行动吧,在路上总比一直观望的要好,未来的你肯定会感谢现在拼搏的自己!如果想学习提升找不到资料,没人答疑解惑时,请及时加入群:1150305204****,里面有各种测试开发资料和技术可以一起交流哦。

相关推荐
coisini.cn3 分钟前
Windows10、CentOS Stream9 环境下安装kafka_2.12-3.6.2记录
运维·zookeeper·kafka·windows10·centos stream 9
Amd79416 分钟前
Nuxt Kit中的 Nitro 处理程序
服务器·插件·处理程序·模块化·nuxt 3·预渲染·nitro
路溪非溪27 分钟前
Linux内核启动流程
linux·运维·服务器
anddddoooo1 小时前
vulnhub(11):derpnstink(hydra爆破用户名和密码、验证的文件上传)
linux·运维·服务器·安全·web安全·网络安全
Xinan_____1 小时前
Linux——k8s认识
linux·运维·kubernetes
TO_ZRG1 小时前
使用jenkins打包unity工程
运维·unity·jenkins
liujiangxu1 小时前
jenkins声明式流水线语法详解
运维·自动化·jenkins
小立爱学习1 小时前
Linux 给 vmlinux 添加符号
linux·c语言
DieSnowK2 小时前
[项目][WebServer][CGI机制 && 设计]详细讲解
linux·开发语言·c++·http·项目·webserver·cgi机制
guoguoqiang.2 小时前
我与Linux的爱恋:命令行参数|环境变量
linux·运维·服务器·c语言·学习