开始之前,先同步一个结论:

对于软件测试从业者,如果你至今为止,还不懂Linux,或者完全没有接触Linux ,这是一件很危险和恐怖的事 。

 

此刻、现在、果断,学习Linux命令 。

 

如果你工作中,完全接触不到Linux ,或者公司服务的环境,还是Windows,赶紧自学Linux,并果断干脆的跳槽 。

这件事,太危险 ,几年后,也许会出现,找不到工作的尴尬境遇 。

 

 

/

 

 

开始进入主题 。

 

如下的这些命令,都是老徐根据自己的从业十年经验,精心筛选,每个命令,点到为止,挑选了一些高频的工作场景 。

 

对于,满足初中级的的工作任务,足够 。

 

 

 

/

 

 

命令 cd

 

1. 如何进入上级目录

cd ..

 

2. 如何进入当前用户主目录

cd ~

 

3. 如何进入上两级目录

cd ../..

 

4. 进入当前目录命令

cd .

 

5. 如何进入目录 /usr/isTester

cd /usr/isTester

 

 

/

 

 

命令 mv

 

1. 移动一个文件夹(isTester文件夹,移动到/APP/www目录)

mv ~/isTester/ /APP/www

 

2. 移动一个文件(isTester.ini  移动到/APP/www目录)

mv isTester.ini  /APP/www

 

3. 当前目录istester.tar.gz 移动到 /usr/ido 目录,并重命名为istester1228.tar.gz

mv isTester.tar.gz /usr/ido/ido.tar.gz

 

4. 移动文件到上级目录

mv isTester.tar.gz ../

 

5. 一条命令,移动两个文件 isTester.tar idoxu.tar 到目录 /APP/www

mv isTester.tar idoxu.tar  -t /APP/www

 

 

/

 

 

命令 cp

 

1. 复制当前目录部署包isTester.tar.gz 到备份目录/APP/www/bak 目录

cp isTester.tar.gz /APP/www/bak

 

2. 复制文件夹 isTester 到部署目录 /APP/www

cp -r isTester/ /APP/www

 

 

/

 

 

命令 mkdir

 

在目录/APP/www 下,

cd /APP/www 

 

1. 新建一个文件夹 isTester

mkdir isTester

 

2. 新建三个文件夹 isTester1 isTester2 isTester3

mkdir isTester1 isTester2 isTester3

 

3. 新建一个多层级文件夹 idoxu/20181230/01

mkdir -p idoxu/20181230/01

 

 

/

 

 

命令 history 

 

1. 查看历史命令执行记录 

history 

 

2. 查看命令mkdir 的历史执行记录 

history | grep mkdir 

 

3. 执行历史记录中,序号为178的命令 

!178

 

 

/

 

 

命令 tail

 

1. 实时刷新log

tail -f isTester.log

 

2. 实时刷新最新500条log

tail -500f isTester.log

 

 

/

 

 

命令 tar

 

1. 压缩一个文件 isTester.ini 

tar -cvf isTester.tar isTester.ini 

 

2. 压缩多个文件 isTester.ini  readme.ini

tar -cvf all.tar isTester.ini readme.ini

 

3. 压缩文件夹  isTester/

tar -cvf isTester.tar isTester/

 

4. 将当前目录,所有jpg文件打包成isTesterjpg.tar

tar -cvf isTesterjpg.tar *.jpg

 

5. 将当前目录,所有jpg文件打包成isTesterjpg.tar.gz

tar -zcvf isTesterjpg.tar.gz *.jpg

 

6. 解压 isTesterjpg.tar

tar -xvf isTesterjpg.tar

 

7. 解压 isTesterjpg.tar.gz

tar -zxvf isTesterjpg.tar.gz

 

 

/

 

 

命令 ls

 

1. 列出当前目录中所有的子目录和文件。

ls

 

2. 列出目录下的所有文件(包含隐**件)

ls -a

 

3. 列出文件的详细信息(包括权限、所有者、文件大小等)

ls -l

 

4. 列出当前目录中所有以“isTester”开头的详细内容

ls -l isTester*

 

 

/

 

 

命令 ps

 

1. 查看所有进程

ps -A

 

2. 查看java进程

ps -ef|grep java

 

3. 显示所有进程信息,连同命令行

ps -ef

 

 

/

 

 

命令 top

 

1. 显示进程信息

top

 

2. 监控每个逻辑CPU的状况

top  ,按 1

 

3. 高亮显示当前运行进程

top ,按 b

 

4. 显示 完整命令

top ,按 c

 

5. 退出top程序

按 q

 

 

/

 

 

命令wget

 

Linux系统中的wget是一个下载文件的工具,对于Linux用户是必不可少的工具

 

文件地址

http://51.istester.com/isTester.png

 

1. 下载isTester.jpg文件

wget http://51.istester.com/isTester.png

 

2. 下载isTester.jpg文件,并存储名为isTester_Logo.jpg

wget -o isTester_Logo.jpg 

http://51.istester.com/isTester.png

 

3. 下载isTester.jpg文件,后台形式下载

wget -b http://51.istester.com/isTester.png

 

 

/

 

 

命令 find

find命令,非常强大,也非常实用,分两次完成,今日第一次 。

给大家布置的作业,是比较实用的几个场景 。

 

 

1. 在/root/isTester 目录及其子目录下面查找名字为isTester.ini的文件 

find /root/isTester/ -name isTester.ini

 

2. 在当前目录及其子目录中查找任何扩展名为“ini”的文件

find . -name "*.ini"

 

3. 在/root/isTester目录下查找更改时间在5日以内的文件 

find /root/isTester/ -mtime +5

 

4. 在/root/isTester目录下查找更改时间在3日以前的文件

find /root/isTester/ -mtime -3

 

5. 在/root/isTester目录下查找所有的目录

find . -type d

 

6. 在/root/isTester目录下查找所有的文件

find /root/isTester/ -type f

 

 

/

 

 

命令 继续find(进阶)

 

find命令,非常强大,也非常实用,分两次完成,今日第一次 。

给大家布置的作业,是比较实用的几个场景 。

 

 

1. 在当前目录,所有的普通文件中搜索istester这个词

find ./ -type f |xargs grep "istester"

 

2. 在当前目录,删除1天以内的所有东西 

find ./ -mtime -1 -print | xargs rm -rf

 

3. 在当前目录,删除10天以前的所有东西(实操的时候,需谨慎,确保在自己建的目录内,别把系统目录删了…)

find ./ -mtime +10 -print | xargs rm -rf

 

4. 删除文件大小为零的文件

find ./ -size 0 | xargs rm -rf

 

 

/

 

 

命令 rm

 

rm是常用的命令,该命令的功能为删除目录/文件(可同时删除,多个文件 / 多个目录)

当然,这也是一个非常危险的命令,建议少用(比如经常出现的误操作 rm * -rf 此命令慎用)

 

 

1. 删除/root/isTester/目录下的文件isTester.ini (系统会询问是否删除)

rm /root/isTester/isTester.ini

 

2. 强行删除/root/isTester/目录下的文件isTester.ini(直接删除,系统不会提示)

rm -f /root/isTester/isTester.ini

 

3. 删除/root/isTester/目录下的所有.log文件

rm -f /root/isTester/*.log

 

4. 删除/root/isTester/目录下的 ido/文件夹

rm -r /root/isTester/ido/

 

5. 强行删除/root/isTester/目录下的 ido/文件夹

rm -rf /root/isTester/ido/

 

6. 删除/root/isTester/目录下的所有内容

rm -rf /root/isTester/*

 

 

/

 

 

文件操作系列 命令

 

1. 创建文件,你知道有哪几个命令 ?(写出至少两种方式)  

1) touch isTester.ini  

2) vi isTester.md

3) echo ‘only test’  > isTester.com

4) cp isTester.ini isTester666.ini

5) ls > fileList.txt

 

2. 同时创建文件 isTester6.ini idoxu.ini

touch isTester6.ini idoxu.ini

 

3. 同时创建2000个文件  isTester0001.ini  - isTester2000.ini

touch istester{0001..2000}.ini

 

4. 更改文件 isTester.ini时间为当前时间

touch isTester.ini

 

 

/

 

 

查看文件系列 命令

 

/**  

命令提示

#cat  由第一行开始显示档案内容 

#tac  从最后一行开始显示,可以看出 tac 是 cat 的倒着写! 

#more 一页一页的显示档案内容 

#less 与 more 类似,但是比 more 更好的是,他可以往前翻页! 

#head 只看头几行 

#tail 只看尾巴几行 

#nl   显示的时候,顺道输出 行号! 

**/

 

1. 查看文件 isTester.ini的内容

cat isTester.ini

 

2. 看文件 isTester.ini前20行内容

head -n 20 isTester.ini

 

3. 看文件 isTester.ini最后30行内容

tail -n 30 isTester.ini

 

4. 显示文件isTester.ini 的第10至20行的内容

head -n 20 isTester.ini | tail -n 10

 

5. 倒序显示文件isTester.ini 前10行的内容

tac isTester.ini | head -n 10

 

6. 显示文件isTester.ini 前10行的内容,并显示行号

nl isTester.ini | head -n 10

 

 

/

 

 

命令 yum  &  scp

# 假设 当前服务器ip  192.168.1.23

 

1. 从Linux服务器192.168.1.22 拷贝文件isTester.ini 到服务器192.168.1.23

scp root@192.168.1.22:/root/idoxu/isTester.ini /root/idoxu 

 

2. 从Linux服务器192.168.1.22 拷贝目录 isTester/ 到服务器192.168.1.23

scp -r root@192.168.1.22:/root/idoxu/isTester/ /root/idoxu

 

3. Linux下安装scp命令(假设是centos服务器,命令用yum)

yum install openssh-clients 

 

 

/

 

 

命令

clear

df

du

ifconfig

 

1. 查看当前服务器ip

ifconfig

 

2. 查看当前服务器硬盘空间

df -h

 

3. 查看目录isTester/ 所占有的空间

du -sh isTester

 

4. 清空当前终端屏幕

clear

 

 

/

 

 

命令 vi + chmod

 

/** 

vi 创建文件 + 编辑文件 。

chmod命令用于改变linux系统文件或目录的访问权限 。

**/

 

 

1. 创建文件 isTester.ini

vi isTester.ini

 

2. 更新文件内容为“21 day Linux Learn ,I'm Idolaoxu,in shenzhen .

输入 i ,进入编辑模式,输入内容,esc进入命令模式 :wq 保存 。

 

2. 将文件 isTester.ini 设为所有人皆可读取

chmod +r isTester.ini

 

3. 将 isTester.ini 设定为只有该文件拥有者可以执行

chmod u+x isTester.ini

 

4. 给文件 isTester.ini 设置所有权限

chmod 777 isTester.ini (或者 chmod a=rwx isTester.ini)

 

 

注:chmod还有很多命令用法,如上几种,满足日常需求 。

 

 

 

/

 

 

End ,命令,这些差不多够用了 。 

如果遇到一些非高频的命令,自行百度/Google搞定即可 。

 

入了门,对Linux有感觉了,甚至是有兴趣了,其他命令,都没啥问题 ,看下帮助文档即可 。

 

比如,想了解 top命令咋用 ?

终端输入 top --help 即可 

 

 

/

 

 

最后,关于Linux学习的几个建议 。

1. 每个命令,多敲几次,每天掌握此文的一个命令即可,勿贪多 。

2. 掌握了前面的一个命令,再继续下一个命令。否则,欠的技术债会越来越多,最后放弃学习 。

3. 学Linux,没诀窍,多敲命令 。

4. 此文的命令,一个循环,预计你需要21天完成 。总共三个循环 ,2个月,大功告成 。

 

 

所谓的三循环理论:

第一遍,花21天时间,把每个命令,敲一遍 。

第二遍,花21天时间,把每个命令,再熟悉一遍 。

第三遍,花21天时间,巩固,延伸更多命令组合玩法,熟记于心 。

 

 

 

 

如果你能看到这段文字,且是第三遍以上看到,恭喜你,Linux这块的知识点,差不多了 。

 

你,可以开始下一个环节 Jenkins / 接口自动化  / 数据库 / 性能测试  /  测试管理  等等 的 专项学习 。

 

事情很多,别急,慢慢来 。