** 1. linux常用命令**
首先给大家介绍一个比较重要的一个命令。这个命令类似于各种语言的print ,用于回显关键的数据。
echo hello world
** 2.Linux的命令分类**
Linux所有的东西都理解成文件。类似于进程、网络等都是文件的不同表现形式。在Linux的世界里,命令分成以下三大类:
- 文件:everything is file
- 进程:文件的运行形态
- 网络:特殊的文件
接下来就针对以下这三类,做一个详细的解说。帮助初学者更好的理解Linux
,进行Linux学习。Linux是一个非常实用的工具,不管是做数据分析还是查看log,学会Linux让你事半功倍。想系统学习的测试小伙伴,也可以在文章末尾点击「阅读原文」进行系统性的提升
** 3. 文件类**
- 磁盘与目录
ls:在Linux下输入ls,即可列举出来你的当前目录下的所有的文件和目录 。当前列出的是根目录下的所有文件
cd:在Linux下,cd + 目录名称,可以进入到相应的目录。cd不加参数时,默认回到主目录,经常使用的cd命令还有:
-
cd .. 返回上级目录
-
cd ../.. 返回上两级目录
-
cd ~ 进入用户主目录 home 目录
mkdir:创建一个新的目录 例如:mkdir demo
df:它会打印出当前磁盘的使用情况,磁盘的大小,使用了多少,可用多少,以及挂载点。
这些命令的详细用法都可以通过 man 来查看,man 函数可以用来查看帮助文档,相当于Linux里自带的--help 函数。
例如:man df
文件编辑
vi:在Linux上创建一个文件只有一个工具,vi或者vim,两者的区别并不大, vi demo.txt
回车就进入到一个交互式的界面。刚一进去是命令模式,要对文件进行修改就要先输入一个a或者i,a是在当前字符后输入内容,i是在当前字符前输入内容。要退出编辑模式要按Esc。在命令行模式下按":"是表示要输入一个具体的命令,w
是保存
q
是退出 q!
是强制退出
文件权限
打开目录之后就能看到各类文件了。那么想查看文件权限就需要用 ls -l 可查看文件的读写执行权限。
例如:
这里的 drwxrwxr-x 十个字母,第一个字母表示文件的类型,第一组 rwx
表示当前用户的权限,第二组表示同组的权限,第三组表示不属于当前用户当前组的表示非同组的权限,他们分别对应简写u、g、o。这里的 -
是表示没有对应的权限的意思。
这里简单的总结一下:
-
u 表示该文件的拥有者,g 表示与该文件的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。u用户 g组 o其它 a 所有用户(默认)
-
+ 表示增加权限、- 表示取消权限、= 表示唯一设定权限。
-
r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该文件是个子目录或者该文件已经被设定过为可执行。
- 修改权限chmod
例如:chmod o+w <文件>
另外用数字来表示权限位
chmod abc file
其中a,b,c各为一个数字,分别表示User、Group、及Other的权限。
- 若要rwx属性则4+2+1=7;
- 若要rw-属性则4+2=6;
- 若要r-x属性则4+1=5;
所以,如果需要将一个文件添加读、写、执行的权限,下面的两种权限的写法可以达到相同的效果
chmod a=rwx file
chmod 777 file
而下图用了一个例子来给大家演示chmod的具体用法。 原始文件里具有读、写、执行的权限。用 chmod a=rw an.jmx
命令修改权限后,该文件只有读、写权限,没有了执行权限
2. 修改归属组chgrp
在Linux的世界里,文件或目录权限的掌控是通过拥有者及所属群组来管理的。我们可以使用chgrp指令去变更文件与目录的所属群组,设置方式采用群组名称或群组识别码。
使用方法:chgrp <选项> <组名> <文件>
chgrp nobody demo
修改前:drwxr-xr-x 3 xxxxxx staff 96 3 6 22:53 demo修改后:drwxr-xr-x 3 xxxxxx nobody 96 3 6 22:53 demo
可以看的到,使用了chgrp命令后,demo文件从原来的组名staff改为了nobody的组名。如果不是相同的组,需要使用root权限哦!
3. 修改所属人chown:
他可以修改当前用户也可以修改当前组
使用方法:chown <文件所属组>:<群体使用者> <文件>
例如:
chown nobody:wheel demo drwxr-xr-x 3 nobody wheel 96 3 6 22:53 demo
就是把demo这个目录从原来的用户改为nobody ,所属组从原来的staff 改为了wheel组。
文件查找及查看
find:find比较常用的方法是find ~ -name "*.log" ,
~表示当前用户的主目录,-name表示指定要找的文件名字,他支持正则表达式。-maxdepth 2表示显示目录层级,后面的“2”表示显示两层目录。
例如:
find ~ -name docker -maxdepth 3/Users/anlinger/docker
此条命令就是查找home目录下名字叫docker且目录层级为3级的文件件。
cat:可以打开文件并显示文件中所有的内容
more:more的功能类似于cat 。cat 是将所有的文件内容都显示出来,而more打开文件之后,可以通过空格进行翻页,方便阅读。
使用方法是:进入目录后 + more <文件名>
➜ apache-tomcat-8.5.50 more RUNNING.txt
less:他可以翻页,上下左右都可以滚动,翻到上一页按“b”返回上一页,按“q”退出。搜索用 / 后面加要搜索的内容。
使用方法:进入目录后 + less <文件名>
➜ apache-tomcat-8.5.50 less RUNNING.txt
创建特殊文件
软链:相当于创建一个快捷方式。语法为:ln -s <文件名> <创建软链名>
-s表示创建软链,an.jmx是目标文件。Desktop/an.jmx是在桌面上创建了一个叫 an.jmx
快捷方式文件。这里必须要注意的是:原路径必须要使用绝对路径,软链接可以是相对路径
ln -s ~/an.jmx Desktop/an.jmx
** 4. 进程类**
如果想查看系统进程,那top、ps这两个命令就可以大显身手了哈~
top命令
它展示的是一个持续的交互式的界面。相当于windows下的资源管理器。可以实时动态的显示系统中进程的资源占用情况
ps命令
它不像top那样,他是一个静态的。ps aux 它显示的页面和top显示的类似。类似的是ps -ef
使用ps命令,可以显示瞬间进程的动态。如下显示:
PID TTY TIME CMD50979 ttys000 0:00.28 login -pf anlinger51213 ttys000 0:00.05 sudo -s51214 ttys000 0:06.50 /bin/zsh53227 ttys000 0:00.00 ps
ps aux与 ps -ef 都可以显示所有包含其他使用者的进程,两者输出略有不同。现在的大部分Linux系统都是可以同时使用这两种方式的。
USER PID %CPU %MEM VSZ RSS TT STAT STARTED TIME COMMANDxxxxxx 713 12.5 0.0 6595152 8264 ?? S 三09上午 751:17.07 com.docker.hyperxxxxxx 574 3.7 0.1 4789484 25084 ?? S 三09上午 129:31.25 /Applications/Utxxxxxx 27331 3.4 0.5 5274300 86484 ?? S 五04下午 3:23.03 /System/Applicat
** 5. 网络类**
netstat在不同系统有不同的命令,Mac和Linux还是有区别的。可使用:netstat -tlnp
-tlnp 这个参数会列举出你的机器当前开放的端口,‘t’是列举出tcp协议的端口,‘l’是列举出正在开放的端口,‘n’只列举出数字地址,‘p’打印开启端口的程序名称
Mac与Linux是不一致的。在mac下使用 netstat -p tcp -n -a 命令,可正常查看。如下图。
** _6.
来霍格沃兹测试开发学社,学习更多软件测试与测试开发的进阶技术,知识点涵盖web自动化测试 app自动化测试、接口自动化测试、测试框架、性能测试、安全测试、持续集成/持续交付/DevOps,测试左移、测试右移、精准测试、测试平台开发、测试管理等内容,课程技术涵盖bash、pytest、junit、selenium、appium、postman、requests、httprunner、jmeter、jenkins、docker、k8s、elk、sonarqube、jacoco、jvm-sandbox等相关技术,全面提升测试开发工程师的技术实力
QQ交流群:484590337
公众号 TestingStudio
点击获取更多信息