日常实战
- 目录:ls cd pwd
ls -l 查看权限 - 文本编辑: vi sed cat
- 文件权限:chmod(修改归属者) chown chgrp(修改归属组)
- 文件搜索:find grep
drwxr-xr-xr-x
d:表示这是个目录,如果没有表示这是一个文件
继续三位,表示当前用户的权限
继续三位,表示同组用户的权限
继续三位,其他组的权限
-
netstat -tlnp 可看出机器上开放了什么端口列表
netstat -tnp 几个人连接过来 将l去掉 l是less的意思
wc 总共有几行,一般对于ip地址来说,有几行就是有几个人去连接
sort | uniq 排序|去重
tail -f n 查看最后n行记录,一般排序后最后几行是连接数最多的ip -
& 、&& 、||三者对比
&> 一起用表示去后台执行。
默认情况下,进程是前台进程,这时就把Shell给占据了,我们无法进行其他操作,对于那些没有交互的进程,很多时候,我们希望将其在后台启动,可以在启动参数的时候加一个’&’实现这个目的。
&& 只有在 && 左边的命令返回真(命令返回值 $? == 0),&& 右边的命令才会被执行
|| 如果||左边的命令(command1)未执行成功,那么就执行||右边的命令(command2)
或者换句话说
如果这个命令执行成功
&&
那么执行这个命令
如果这个命令执行失败了||
那么就执行这个命令。
- $@ 可以在函数之间传递参数,并不改变参数的排列
比如 1 2 3 ‘45 6 7’ 这个参数经过多次传递后,依然表示4个参数,
记得使用“$@”
不要使用$@
$* 会把参数打散。相对顺序不变,但是参数就变为8个了 - 函数
ff()
{
…
}
添加执行权限
chmod u+ xxx.sh; /xxx.sh
debug代码的过程
bash -x(读取每一句,并方便的看到执行语句)
set -x (在当前语句中调试)
set +x (还原)