以下介绍测试工作中常用的一些命令。未专门标注的,为Linux和Mac系统下的。
查看占用端口的进程
Linux
代码语言:javascript复制aaron@ubuntu:~$ lsof -i :8085 | grep LISTEN
___server 69080 aaron 11u IPv6 0x5624b7cdebdb6b7b 0t0 TCP *:8085 (LISTEN)
Windows
代码语言:javascript复制C:>netstat -aon | findstr :80 | findstr LISTENING
TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 2588
TCP [::]:80 [::]:0 LISTENING 2588
杀死进程
Linux
代码语言:javascript复制aaron@ubuntu:~$ kill -9 69080
Windows
代码语言:javascript复制PS C:WINDOWSsystem32> taskkill /F /PID 8152
SUCCESS: The process with PID 8152 has been terminated.
Windows下权限不足的,可右击开始按钮,用管理员模式启动PowerShell。
按名称查看进程
代码语言:javascript复制aaron@ubuntu:~$ ps -ef | grep nginx | grep -v grep
root 21471 1 0 2020 ? 00:00:00 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
www-data 21472 21471 0 2020 ? 00:07:55 nginx: worker process
使用grep -v grep过滤掉该查看进程本身。
命令行管道
代码语言:javascript复制aaron@ubuntu:~$ ps -ef | grep nginx | grep -v grep | awk '{print $2}' | xargs kill -9
此处使用管道,杀掉名为nginx的进程。
- 使用|管道符,将命令的标准输出传递为下一个命令的标准输入;
- 使用awk打印所捕获行的第2列,列按空格或Tab符号进行分割;
- 使用xargs,将上个命令的标准输出转换成下一个命令的参数。
后台运行服务
代码语言:javascript复制aaron@ubuntu:~$ nohup appium -p %d --default-capabilities '{"udid":"sn"}' > appium.log 2>&1 &
后台为指定串号sn的手机运行appium服务。
修改文件
查找zd.conf文件中,以“Version”开头的行,替换为“Version = 2.0”。 Linux
代码语言:javascript复制sed -i "s/Version.*/Version = 2.0/" zd.conf
Mac
代码语言:javascript复制gsed -i "s/Version.*/Version = 2.0/" zd.conf
复制目录到远程
代码语言:javascript复制scp -r bin/utl-server/0.8/linux/utl-server 139.224.8.129:~
实时查看文件内容
代码语言:javascript复制aaron@ubuntu:~$ tail -f jmeter.log
2021-04-25 15:11:51,723 INFO o.a.j.p.h.s.HTTPSamplerBase: Parser for text/xml is org.apache.jmeter.protocol.http.parser.LagartoBasedHtmlParser
2021-04-25 15:11:51,723 INFO o.a.j.p.h.s.HTTPSamplerBase: Parser for text/vnd.wap.wml is org.apache.jmeter.protocol.http.parser.RegexpHTMLParser
2021-04-25 15:11:51,723 INFO o.a.j.p.h.s.HTTPSamplerBase: Parser for text/css is org.apache.jmeter.protocol.http.parser.CssParser
2021-04-25 15:11:51,789 INFO o.a.j.s.SampleResult: Note: Sample TimeStamps are START times
2021-04-25 15:11:51,789 INFO o.a.j.s.SampleResult: sampleresult.default.encoding is set to ISO-8859-1
2021-04-25 15:11:51,789 INFO o.a.j.s.SampleResult: sampleresult.useNanoTime=true
查看正在运行的服务
代码语言:javascript复制aaron@ngtesting-lab:~$ systemctl | grep apparmor
apparmor.service. loaded active exited LSB: AppArmor initialization
查看服务状态
代码语言:javascript复制aaron@ubuntu:~$ service apparmor status
● apparmor.service - LSB: AppArmor initialization
Loaded: loaded (/etc/init.d/apparmor; bad; vendor preset: enabled)
Active: active (exited) since Fri 2021-05-28 09:42:26 CST; 18s ago
Docs: man:systemd-sysv-generator(8)
Process: 19969 ExecStop=/etc/init.d/apparmor stop (code=exited, status=0/SUCCESS)
Process: 20185 ExecStart=/etc/init.d/apparmor start (code=exited, status=0/SUCCESS)
重启服务
代码语言:javascript复制aaron@ubuntu:~$ sudo service apparmor restart
查看内存状况
代码语言:javascript复制aaron@ubuntu:~$ free -h
total used free shared buff/cache available
Mem: 7.8G 2.3G 931M 40M 4.6G 5.2G
Swap: 0B 0B 0B
查看磁盘状况
代码语言:javascript复制aaron@ubuntu:~/ df -h
Filesystem Size Used Avail Use% Mounted on
udev 3.9G 0 3.9G 0% /dev
tmpfs 799M 3.4M 795M 1% /run
/dev/vda1 40G 33G 4.8G 88% /
tmpfs 3.9G 8.0K 3.9G 1% /dev/shm
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup
tmpfs 799M 0 799M 0% /run/user/1000
监控系统状况
代码语言:javascript复制aaron@ubuntu:~$ top
top - 09:29:37 up 378 days, 16:35, 1 user, load average: 0.00, 0.00, 0.00
Tasks: 146 total, 1 running, 145 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.2 us, 0.1 sy, 0.0 ni, 99.8 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 8174708 total, 953320 free, 2365784 used, 4855604 buff/cache
KiB Swap: 0 total, 0 free, 0 used. 5426472 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME COMMAND
14459 root 10 -10 135204 17124 14024 S 0.7 0.2 2:52.83 AliYunDun
956 root 20 0 2428132 92556 16208 S 0.3 1.1 2690:07 java
3217 999 20 0 90232 7264 3296 S 0.3 0.1 308:04.26 redis-server
Windows系统下,右击任务栏选择任务管理器。