1 反引号可以进行命令的执行 ,如 `pwd` 会执行pwd这个命令。也可以通过$(pwd)来执行
2 $0 代表当前命令本身的路径。
3 dirname 可以读取指定路径名,并删除最后一个斜杠后的路径。比如有 dirname /opt/apps ,结果为 /opt
4 `dirname "$0" `来获取当前脚本的目录。
5 位置参数可以用shift
命令左移。比如shift 3
表示原来的$4
现在变成$1
,原来的$5
现在变成$2
等等,原来的$1
、$2
、$3
丢弃,$0
不移动。不带参数的shift
命令相当于shift 1
。 这样我们来获取参数的时候就不用一个一个数了。
6 nohup 不挂端的运行,即脱离终端运行,当我们以当前shell启动了一个命令,如果shell关闭后,那么命令就不执行了,nohup可以解决这个问题
7 & 使命令在后台运行,一般与nohup组合使用。 nohup sh commnd &
8 变量定义的等号前后不要有空格
9 ${param1:-param2} , 如果param1不为空,结果为param1, 否则为param2
10 sh -c "cmd" 可以直接执行字符串内的命令
11 使用grep 来执行进行if判断:
if grep qwrewq -q info.log ;then
echo 'success'
fi
12 nohup command >out.file 2>&1 &
这里面,“1”表示文件描述符 1,表示标准输出,“2”表示文件描述符 2,意思是标准错误输出,“2>&1”表示标准输出和错误输出合并了。合并到哪里去呢?到 out.file 里。