进程相关:

1,查看所有进程(包含历史进程):

ps -ef 各个参数的含义依次是uid,pid,ppid,c(cpu利用率),stime(进程启动时间),tty,time,cmd

2,动态查看进程top

top命令的详细用法可以参见:

http://www.2cto.com/os/201209/157960.html

注意命令中的相关字段:

对于cpu,分为us(用户空间占用cpu百分比);sy(系统空间占用cpu百分比);id(空闲cpu百分比);wa(IO等待占用cpu百分比)

其中的各个字段:PID(进行id);USER(进程所有者);PR(进程优先级); VIRT 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
RES 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA
SHR 共享内存大小,单位kb
S 进程状态。D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程
%CPU 上次更新到现在的CPU时间占用百分比
%MEM 进程使用的物理内存百分比

 

3, 后台运行进程

前台运行有:. ,sh,source

后台运行进程:再命令后面加一个&,不过这种方法,如果会话退出,那么后台进程也随之退出

如果需要会话退出的时候,进程不退出,那么方法是nohup。例如nohup ./test &。需要注意,nohup会从终端解除进程的关联,丢掉到stdout和stderror链接,而是将这两部分消息都重定向到nohup.out文件中

定时运行 at(预设时间运行) ,cron(定期运行);

开机或用户启动时运行:.bash_profile,bashrc文件位于用户主目录,前者在用户每次登录时运行,后者在每个shell启动时运行

4,结束进程:

重温linux信号量,常用的有SIGHUP(挂起进程),SIGINT(终止进程),SIGKILL(无条件终止进程),SIFTSTP(暂停进程,但并不终止)

a) ctrl+c:产生SIGHUP信号,发送给shell中当前运行的进程

b) ctrl+z:生成一个SIGTSTP信号,暂停进程,不过该进程继续保留在内存中,能从上次停止的地方继续运行。

如果想要进一步终止,可以用ps au(STAT字段为S代表被停止或追踪),也可以使用jobs查看后台进程,之后再用kill命令杀死

如果恢复可以用bg,fg等命令。

c)kill/killall 发出SIFKILL信号,无条件终止进程,killall可以直接使用进程名字,并可以使用通配符

2,网络命令

查看本机ip hostname -i

查看远程机器ip : ping (机器名称),host等等

查看进程占用的端口号

[root@nbatest ~]# netstat -anp | grep 进程名称
netstat -anp

查看使用端口号的进程
lsof
[root@nbatest ~]# lsof -i:  端口号

3,监测磁盘空间

df -h(用户可读的形式):显示某个设备还有多少磁盘空间

du -sh :显示特定目录下的磁盘使用情况

4,流程控制语句(if依据的是命令回传码$0,而不是其他语言中常见的true或者false,只不过利用test或者中括号进行判断的时候,类似于达到了true或者false的效果)

if then fi(then不能省略)

其中的条件判断分为三类:数值判断,字符串判断,文件判断(test,[]两种方式,推荐使用后者)

数值判断:-eq,-gt,-lt,-ne,-ge,-le

字符串判断: =,!=,<,>,-n(长度是否非0),-z(长度是否为0);注意大小写符号必须使用\进行转义,否则会被当成重定向命令

文件判断:-d,-f,-e,-s(判断文件是否存在且非空),-nt,-ot

if双尖括号(())中可以放置数学表达式;[[]]可以进行正则匹配

普通的数学运算也可以放置在$[]中

${}不能放置$,需要将$符号换成!号

由此得到遍历命令行参数的两种方法:

for arg in $@
do
echo $arg
done #方法2 for((i=;i<=$#;i++))
do
echo ${!i}
done

遍历shell脚本命令行参数

6, vim缩进格式化 gg=G

8,目录覆盖

cp -r ./test/* ./test/

9,nohup 用户退出,进程依旧执行

10, ls | xargs wc -l 是将显示的文件名作为wc -l的参数执行,目录下有多少个文件就执行多少次

ls | xargs -i mv {} {}.bak 将目录下的所有文件都重命名为xxxx.bak

11,找到某个程序存放目录,包括bin,source,etc等 where is mysq

12, 垃圾桶黑洞 /dev/null

将错误信息忽略 find /home -name .bashrc 2> /dev/null

将标准输出和错误输出到同一个文件中

ls . &>list  或者 ls . >list 2 >&1

13, 命令运行的判断依据 &?(命令回传值)与&&或||

&?命令回传值,&&正确则执行,否则不执行。||与之相反

cmd1&&cmd2||cmd3正确执行2,否则执行3

关于命令行的参数:

1,$#代表参数个数;$0代表脚本命令(`basename $0`);$1...代表各个参数,如果脚本需要多于9个参数,需要稍微修改一下变量名,如${10};$*将所有的参数作为一个单词保存,然而$@则是作为不同的单词。选取最后一个参数,需要用${!#}而不是${$#}

2,shift可以用来移动变量,利用它某种程度可以实现可变参数,但要注意一个参数被移除之后,它的值就会被丢掉而且无法恢复。某些时候可以用来分离参数和选项。(不过更常用的是使用getopt方法)

测试常用linux命令1的更多相关文章

  1. 测试常用Linux命令

    大家应该经常在网络上看到下图吧,虽然我们不会去执行下面图片中的命令,但是linux常用的命令对于测试人员来说,还是必须掌握的,不管是做功能测试还是性能测试,最常用的就是看日志了. sudo是linux ...

  2. 测试常用Linux命令总结

    1.显示目录和文件的命令 Ls:用于查看所有文件夹的命令. Dir:用于显示指定文件夹和目录的命令   Tree: 以树状图列出目录内容 Du:显示目录或文件大小 2.修改目录,文件权限和属主及数组命 ...

  3. 测试常用linux命令之系统监测

    top命令: cpu使用情况,内存等 du -hs: 查看目录大小 df -h :查看磁盘使用情况 free: 查看电脑整体内存使用情况 uptime:系统时间,用户数目等 vmstat:内存使用,进 ...

  4. 测试常用linux命令之sed篇

    一.sed命令 可以放在单独的脚本文件中执行:sed -f script1 data1 多条命令也可以用{}括起来 sed可以进行文本的替换,删除,行添加,打印等.采用 sed [address]{c ...

  5. 十五个最常用Linux命令行 - imsoft.cnblogs

    众多Linux管理员在使用Linux的时候会经常使用到很多Linux命令行,其中有绝大部分不是经常使用到的.在本文中主要为大家总结了经常使用的十五个最常用Linux命令行,希望对刚刚接触Linux命令 ...

  6. 常用Linux命令小结

    常用Linux命令小结 Linux下有很多常用的很有用的命令,这种命令用的多了就熟了,对于我来说,如果长时间没有用的话,就容易忘记.当然,可以到时候用man命令查看帮助,但是,到时候查找的话未免有些临 ...

  7. 77个常用Linux命令和工具

    77个常用Linux命令和工具 Linux管理员不能单靠GUI图形界面吃饭.这就是我们编辑这篇最实用Linux命令手册的原因.这个指南是特别为Linux管理员和系统管理员 设计的,汇集了最有用的一些工 ...

  8. 常用Linux命令笔记

    任何脱离业务的架构都是耍流氓 只记录实际常用的Linux命令 常用Linux命令 查找安装路径: whereis nginx 查询nginx进程: ps aux|grep nginx 查看 CentO ...

  9. 常用 Linux 命令的基本使用

    常用 Linux 命令的基本使用 操作系统 作用:管理好硬件设备,让软件可以和硬件发生交互类型 桌面操作系统 Windows macos linux 服务器操作系统 linux Windows ser ...

随机推荐

  1. Luogu P5330 [SNOI2019]数论

    题目 如果\(P>Q\)的话我们先交换一下\(P,Q\). 我们先枚举所有满足第一个条件的数,对于\(x\equiv a_i(mod\ P)\),设\(x=a_i+kP(k\in[0,\lflo ...

  2. linux下安装phpunit

    安装pear 的命令如下: $ wget http://pear.php.net/go-pear.phar $ php go-pear.phar 如果报出PHP Warning:  file_exis ...

  3. RabbitMQ交换器Exchange介绍与实践

    RabbitMQ交换器Exchange介绍与实践 RabbitMQ系列文章 RabbitMQ在Ubuntu上的环境搭建 深入了解RabbitMQ工作原理及简单使用 RabbitMQ交换器Exchang ...

  4. django的模板的继承与导入

    1.模板继承 母版中需要继承的地方: {% block content %} {% endblock %} 对应的子版中文件最开头写: {% extends 'head_demo.html' %} 然 ...

  5. XPath语法以及谓语的结合使用

    /* XPath 术语 节点(Node) 在 XPath 中,有七种类型的节点:元素.属性.文本.命名空间.处理指令.注释以及文档(根)节点.XML 文档是被作为节点树来对待的.树的根被称为文档节点或 ...

  6. 关于Windows 10上MarkdownPad2无法预览的解决办法

    升级win10后,发现一直可以用的MarkdownPad2预览功能不可以用了.于是在网上搜索了一下,刚开始没有解决.不过现在可以了.现在把解决方案记录下来.Windows10上使用MarkdownPa ...

  7. SQL常见面试题-行列互换

      有一个SQL题在面试中出现的概率极高,最近有学生出去面试仍然会遇到这样的题目,在这里跟大家分享一下. 题目:数据库中有一张如下所示的表,表名为sales. 年 季度 销售量 1991 1 11 1 ...

  8. First one Day(哈哈哈哈)

    今天是我来到园子的第一天,后序会分享一些自己所学的知识(当然我知道没人看,但是我自己看就好).哈哈哈哈哈  请大家多多关照!

  9. 2017 BJ ICPC 石子合并变种 向量基本功及分类考察

    E 模拟 #include <bits/stdc++.h> #define PI acos(-1.0) #define mem(a,b) memset((a),b,sizeof(a)) # ...

  10. 35C3 CTF - Web - php

    参考链接 https://ctftime.org/task/7404 题目描述 PHP's unserialization mechanism can be exceptional. 解题流程 程序代 ...