【软件测试】总结了实几十个工作中容易遗忘的 Linux 操作,倒要看看你能拿几分?

46 阅读3分钟

大多数linux发行版自带以查找shell命令及其他GNU工具信息的在线手册。man命令用来访问linux系统上的手册页面。当用man命令查看手册,使用分页的程序来现实的。

12、编辑start.sh文件,查看文件前10行内容和后10行内容

vi start.sh

head -n 10 start.sh   前10行

tail -n 10 start.sh    后10行

13、vim怎么退出

`q` 不保存直接退出
`wq` 保存后退出
`q!` 强制退出

14、vim怎么快速查找

按下**ESC**输入 再输入 空格 +查找内容

15、如何查看linux端口号被占用

netstat -a 查看端口状态

16、如何查看进程状态?

ps -ef | grep 进程名

17、5个客户端通过TCP连接到主机,如何查看这5个连接

netstat -nat|grep ESTABLISHED

18、使用哪一个命令可以查看自己文件系统的磁盘空间配额呢?

使用命令repquota 能够显示出一个文件系统的配额信息

注:只有root用户才能够查看其它用户的配额。

19、怎样一页一页地查看一个大文件的内容呢?

通过管道将命令”cat file_name.txt” 和 ’more’ 连接在一起可以实现这个需要.

[root@localhost ~]# cat file_name.txt | more

20、统计文件的行数

awk ‘END{print NR}’1.txt

sed -n ‘$=’ 1.txt

21、打印第六列的和

cat 1.txt | awk ‘{sum+=$6} END {print sum}’

22、打印文件中重复行的行数

awk ‘{for (i=1;i<=NF;i++){print i}}’ nowcoder.txt|sort|uniq -c|sort|awk ‘{print 2 $1}’

uniq 比较相邻行是否重复 -c 显示重复行数 和sort结合使用 显示结果第一列为重复次数 第二列为行内容

23、检查文件第二列是否有重复的行,并打印重复次数

awk ‘{print $2}’ 1.txt|sort|uniq -cd|sort -n

23、id/who 查看用户

  • id/who            #显示当前用户的信息
  • id  某用户        #显示某用户的信息
  • who -a           #显示目前登入系统的用户详细信息
  • who -b           #上次系统启动时间

24、在xshell中可以通过下面的命令进行上传下载

可使用 yum install lrzsz

rz:选择上传文件

sz 文件名:选择下载路径

25、比较文件的差异

diff server.xml server.xml_bak

diff以逐行的方式,比较文本文件的异同处。所是指定要比较目录,则diff会比较目录中相同文件名的文件,但不会比较其中子目录。

26、建立软链接(快捷方式),以及硬链接的命令

软链接: ln -s slink source

硬链接: ln link source

27、怎么使一个命令在后台运行?

一般都是使用 & 在命令结尾来让程序自动运行。(命令后可以不追加空格)

28、查看各类环境变量用什么命令?

查看所有 env 查看某个,如 home: env $HOME

29、终止进程用什么命令? 带什么参数?

kill [-s <信息名称或编号>][程序] 或 kill [-l <信息编号>] 

kill-9 pid

30、你的系统目前有许多正在运行的任务,在不重启机器的条件下,有什么方法可以把所有正在运行的进程移除

使用linux命令 ’disown -r ’可以将所有正在运行的进程移除。

31、bash shell 中的hash 命令有什么作用

linux命令’hash’管理着一个内置的哈希表,记录了已执行过的命令的完整路径, 用该命令可以打印出你所使用过的命令以及执行的次数。

[root@localhost ~]# hash
hits command
2 /bin/ls
2 /bin/su

32、如何向脚本传递参数

./script argument`
实例:显示文件名称脚本
./show.sh file1.txt
cat show.sh
#!/bin/bash
cat $1

33、如何在脚本中使用参数

第一个参数 : 1,第二个参数:2

实例:脚本会复制文件(arg1) 到目标地址(arg2)

./copy.sh file1.txt /tmp/
cat copy.sh
#!/bin/bash
cp $1 $2

34、如何检查之前的命令是否运行成功

$?

35、如何调试 bash 脚本

将 -xv 参数加到 #!/bin/bash 后 实例:

#!/bin/bash –xv

36、怎么查看当前进程

命令:ps -ef 或 ps aux

37、程序出现死循环如何终止

通过快捷键ctrl+c跳出死循环

若ctrl+c无法跳出,则用ctrl+d

或者杀死进程 kill 进程号

38、压缩解压缩文件

tar cvf a.tar 1.txt 2.txt 3.txt#将3个文件放到文件包a.tar中。
tar cvf /tmp/a1.tar *.txt#指定包存放的位置。
tar xvf a.tar#将文件解压缩到当前目录。
tar -zcvf a.tar.gz *.txt#打包与压缩为a.tar.gz。 
tar -zxvf a.tar.gz#解压缩并解包。

39、grep同时满足多个关键字和满足任意关键字

grep -E "word1|word2|word3"   file.txt

满足任意条件(word1、word2和word3之一)将匹配。

grep word1 file.txt | grep word2 |grep word3

必须同时满足三个条件(word1、word2和word3)才匹配。

比如这段脚本:

> Test_file=`ls ${bak_path} | grep -e ^${Bak_Pro} | grep b${Bak_File}$ `

40、shell脚本删除指定天数前的备份文件

find /APP/ido/xu/ -mtime +7 -name "idoxu.tar.*" -exec rm -rf {} \;

41、使用mkdir命令建立多层目录

mkdir -p /APP/ido/xu/isTester

默认情况下mkdir 无法创建多层目录,需要加上参数-p

42、scp报错:not a regular file

原因是 这样是相当于下载文件夹,而非文件。

解决办法是 加参数 -r 

scp -r Test_ido_* root@192.168.1.49:/root/.jenkins/jobs/

这样就可以了

43、linux下面覆盖文件,如何实现直接覆盖,不提示

直接输入命令即可实现

输入命令:cp -rf idolaoxu ldolaoxunew

会提示如下:

img img

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

了解详情》docs.qq.com/doc/DSlVlZExWQ0FRSE9H