软件测试常用的linux命令

不同Linux发行版的命令数量不一样,但Linux发行版本最少的命令也有200多个。这里我把比较重要和使用频率最多的命令,按照它们在系统中的作用分成下面六个部分一一介绍。

◆ 安装和登录命令:login、shutdown、halt、reboot、install、mount、umount、chsh、exit、last;

 文件处理命令:file、mkdir、grep、dd、find、mv、ls、diff、cat、ln;

◆ 系统管理相关命令:df、top、free、quota、at、lp、adduser、groupadd、kill、crontab;

◆ 网络操作命令:ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、finger、mail、 nslookup;

◆ 系统安全相关命令:passwd、su、umask、chgrp、chmod、chown、chattr、sudo ps、who;

◆ 其它命令:tar、unzip、gunzip、unarj、mtools、man、unendcode、uudecode。

下面详细介绍的这些命令:是日常Linux下最为常用的基本命令,也是软件测试人员必须掌握的。

ls 查看文件与目录

用法: ls [参数][文件]

主要参数

-a, --all:不隐藏任何以“.” 字符开始的项目。

-A, --almost-all:列出除了“ . ”及 “.. ”以外的任何项目。

--author:印出每个文件著作者。

-b, --escape:以八进制溢出序列表示不可打印的字符。

--block-size=大小:块以指定<大小>的字节为单位。

-B, --ignore-backups:不列出任何以 ~ 字符结束的项目。

-f:不进行排序,-aU参数生效,-lst参数失效。

-F, --classify:加上文件类型的指示符号 (*/=@| 其中一个)。

-g:like -l, but do not list owner。

-G, --no-group:inhibit display of group information。

-i, --inode:列出每个文件的inode号。

-I, --ignore=样式:不印出任何符合Shell万用字符<样式>的项目。

-k:即--block-size=1K。

-l:使用较长格式列出信息。

-L, --dereference:当显示符号链接的文件信息时,显示符号链接所指示的对象,而并非符号链接本身的信息。

-m:所有项目以逗号分隔,并填满整行行宽。

-n, --numeric-uid-gid:类似-l,但列出UID及GID号。

-N, --literal:列出未经处理的项目名称,例如不特别处理控制字符。

-p, --file-type:加上文件类型的指示符号 (/=@| 其中一个)。

-Q, --quote-name:将项目名称括上双引号。

-r, --reverse:依相反次序排列。

-R, --recursive:同时列出所有子目录层。

-s, --size:以块大小为序。

cd 切换目录

cd .. 返回上一层目录

cd . 进入当前目录

cd - 返回前一次的目录,即上一次的目录不是上一层目录

stat 显示文件详细信息

显示文件权限、属性、大小、修改时间、访问时间等 比ls –l更加详细

用法:stat 文件名

grep 文本搜索/过滤

用法:grep [参数] 搜索字符串 通常与管道命令一起用 搜索某个文件的某个字符

Grep命令非常强大,系统管理员经常会用到它。grep命令可以在文件中搜索指定格式的字符串,同时对其进行标准输出。

语法: grep " "

        grep "Mathew" test.txt

root@devopscube:~# grep "dennis" test.txt

4 dennis start beginner jul

上面命令的输出结果是包含该子字符串的,如果你想检索完整的单词,你需要添加“-i”选项。同时,也可以用grep命令在多个文件中搜索字符串,命令代码如下:

while(!game_over)

{

    for each possible move:

        count_no_of_merges_for_2-tiles and 4-tiles

    choose the move with large number of merges

}

grep "dennis" test1.txt test2.txt test3.txt

当然你也可以用正则表达式来匹配字符串。

参数:

-c:只输出匹配行的计数。

-I:不区分大小写(只适用于单字符)。

-h:查询多文件时不显示文件名。

-l:查询多文件时只输出包含匹配字符的文件名。

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

-s:不显示不存在或无匹配文本的错误信息。

-v:显示不包含匹配文本的所有行。

pattern正则表达式主要参数:

\:忽略正则表达式中特殊字符的原有含义。

^:匹配正则表达式的开始行。

$: 匹配正则表达式的结束行。

\<:从匹配正则表达式的行开始。

\>:到匹配正则表达式的行结束。

[ ]:单个字符,如[A]即A符合要求 。

[ - ]:范围,如[A-Z],即A、B、C一直到Z都符合要求 。

. :所有的单个字符。

* :有字符,长度可以为0。

find 查找文件

用法:find [PATH] [option] [ -print]

path指定目录路径,系统从这里开始沿着目录树向下查找文件。它是一个路径列表,相互用空格分离,如果不写path,那么默认为当前目录。

find命令用来检索文件,可以用“-name”选项来检索指定名称的文件:

find -name find -name test.txt

root@devopscube:/home/ubuntu# cd ~

root@devopscube:~# find -name test.txt

./demo/test.txt

./test.txt

你也可以用“/ -name”来检索指定名称的文件夹:

find / -name passwd

root@devopscube:~# find / -name passwd

/etc/cron.daily/passwd

/etc/pam.d/passwd

/etc/passwd

/usr/share/lintian/overrides/passwd

参数:

-name filename #查找名为filename的文件

-perm #按执行权限来查找

-user username #按文件属主来查找

-group groupname #按组来查找

-mtime -n +n #按文件更改时间来查找文件,-n指n天以内,+n指n天以前

-ctime -n +n #按文件创建时间来查找文件,-n指n天以内,+n指n天以前

-size +-n[c] #查长度为n块[或n字节]的文件(+-为大于小于)

grep 与 find 命令的区别:grep搜索的是文本,find搜索的是文件,换句话说就是grep是查找匹配条件的行,find是搜索匹配条件的文件。

PS 进程查看命令

使用该命令可以确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵尸、哪些进程占用了过多的资源ps是显示瞬间进程的状态,并不动态连续;如果想对进程进行实时监控应该用top命令

-A 将所有进程都显示出来

-a 不与terminal有关的所有进程

-x一般与a参数一起使用,可列出较完整的信息

-f 做一个更为完整的输出

ps -T -p -T开启线程查看

top 查看各进程CPU/内存占用

Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况(cpu/内存)

用法:top [参数]

参数:

-d 显示两次刷新时间的间隔,比如 -d 5,表示两次刷新间隔为5秒;

-i 禁止显示空闲进程或僵尸进程;

-n NUM 显示更新次数,然后退出。比如 -n 5,表示top更新5次数据就退出;

-p PID 仅监视指定进程的ID;PID是一个数值;

-H -p 查看某个进程内的线程运行状况

top与ps命令的异同点:

相同点:top与ps都可以查看进程信息;

区别:ps看到的是命令执行瞬间的进程信息,而top命令则可以持续的监视进程;ps只是查看进程,而top还可以监视系统性能,例如cpu/内存/负载等

kill、kill all 删除进程

kill [信号代码] PID 信号代码可以省略,们常用的信号代码是-9 ,表示强制终止;

Kill all 进程名 通过程序的名字,直接杀死所有进程

kill与killall的区别:kill后面接的是PID,killall后面接的是进程名

补充一个知识点:init进程

init是Linux系统操作中不可缺少的程序之一。所谓的init进程,它是一个由内核启动的用户级进程。init始终是第一个进程(其进程编号始终为1),而其它所有进程都是init进程的子孙。init进程是不可杀的,也杀不死!

pwd 显示当前目录

显示当前的命令,该命令非常简单

help\man 帮助命令

有了这两个命令,遇到任何不会的Linux命令,你都可以查看它们的使用方法。

用法:

命令 --help

man 命令

该命令可以显示指定命令的用法和描述。比如你想知道ls命令的用法和选项,可以在终端执行“man ls”:

语法: man

man ls

出处:http://wemedia.ifeng.com/75822284/wemedia.shtml

转载于:https://www.cnblogs.com/Mr-Simple001/p/10831963.html

你可能感兴趣的:(软件测试常用的linux命令)