软件工程师在日常工作中要检查各种bug,理解产品需求与功能,也要测试是否稳定,总的来说,测试工程师扮演着一个非常重要的角色。那么作为一个软件工程师来说,必须要了解和常用的Linux命令都有哪些呢?
cd 表示目录切换
cd 表示返回目录上一层
cd 表示进入当前目录
cd 表示返回前一次目录,不是上一层目录哦
ls 表示查看文件和目录
详细参数:
ls –l 这是显示文件的权限和相关属性
ls –a 是指列出所有的文件,比如隐藏文件(开头的文件)
ls –h 将文件容量以GB、kB等的方式列举出来
stat 显示文件详细信息
这个命令比ls –l更加详细,可以显示出文件权限、文件属性、文件大小、文件修改时间和访问时间等等,相对实用点;
所以,当我们想要查看文件的权限的时候就有两个命令可以实现,一个是stat;另一个则是ls -l。
软件测试
grep 文本搜索/过滤
用法:用grep [参数] 搜索字符串,这个常常和管道命令一起用,当搜索某个文件的某个字符时候;
详细参数:
-i 表示不区分大小写;
-v 表示反向搜索,它显示不是搜索字符串的行
-c 表示统计出现的次数
-n 表示顺便输出行号
find 查找命令
用法:find [PATH] [option] [ -print]
参数:
-name ** #查找名为**的文件(这里自己定义文件名,这里就用*代替了)
-perm # 表示按执行的权限查找
-user username # 表示按文件归属者查找
-group groupname # 表示按组查找
-mtime -n +n # 表示按文件修改时间查找文件,-n表示n天之内,+n表示n天之前
-ctime -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<pid> -T表示开启线程查看
top 查看进程CPU/内存占用的多少
Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况(cpu/内存)
用法:top [参数]
参数:
-d 表示两次刷新时间的间隔,举个例子:-d 5,就是表示两次刷新间隔为5秒;
-i 表示禁止显示空闲进程或僵尸进程;
-n NUM 显示更新次数,然后退出。举个例子:-n 5,表示top更新5次后数据退出;
-p PID 表示仅监视指定进程的ID;备注:PID是一个数值;
-H -p<pid> 表示查看某个进程内的线程运行情况
这里也顺便说说top与ps命令的相同点和不同点吧:
相同点:top与ps它们两者都可以查看进程信息;
不同点:ps看到的是命令执行瞬间的进程信息,而top命令是持续的监视进程;ps只是查看进程,而top不仅能看进程,还能监视系统性能,比如cpu、内存、等信息。
kill、kill all 删除进程
这里就直接说说kill与killall的区别吧:
kill后面接的是PID,killall后面接的是进程名,这是两者最大的区别之处。
说到这个,我觉得这里有必要补充一个知识点,那就是init进程;
大家应该知道,init是Linux系统操作中必不可少的程序之一。那什么是init进程呢?它就是一个由内核启动的用户级进程。init始终是第一个进程(其进程编号始终为1),而其它所有进程都是init进程的后代。要记住的是,init进程是不可杀的,也杀不死!
pwd 表示显示当前目录命令
这个命令非常简单,也很好理解。
helpman 这个是帮助命令
这两个命令,可以帮助我们在平时遇到任何不会的Linux命令时,就可以用这个两个命令来查看它们的使用方法哦,这两个是比较实用的。本文中描述的参数为常用参数,文字表述为主,演示没有具体演示,有点基础的小伙伴应该可以看明白哦。另外这篇提及的命令也还并不完全,还有就是本系列只适用于入门用户(希望对你们有帮助),如果你是软件测试的大咖,就欢迎给点建议哦。