1、传参变量
[root@mysql51 support-files]# [root@mysql51 support-files]# vi test.sh #!/bin/bash echo "shell " echo "$0"; echo "$1"; echo "$2"; echo "$3"; echo "$4"; echo "['$*']"; echo "$*"; echo "$#"; echo "$$"; echo "$!"; echo "$@"; echo "$-"; echo "$?";
参数处理 | 说明 |
---|---|
$# | 传递到脚本的参数个数 |
$* | 以一个单字符串显示所有向脚本传递的参数。 如"$*"用「"」括起来的情况、以"$1 $2 … $n"的形式输出所有参数。 |
$$ | 脚本运行的当前进程ID号 |
$! | 后台运行的最后一个进程的ID号 |
$@ | 与$*相同,但是使用时加引号,并在引号中返回每个参数。 如"$@"用「"」括起来的情况、以"$1" "$2" … "$n" 的形式输出所有参数。 |
$- | 显示Shell使用的当前选项,与set命令功能相同。 |
$? | 显示最后命令的退出状态。0表示没有错误,其他任何值表明有错误。 |
[root@mysql51 support-files]# sh test.sh 1 2 3 4 shell test.sh 1 2 3 4 ['1 2 3 4'] 1 2 3 4 4 30959 1 2 3 4 hB 0
2、test
if test -z "$basedir" ----如果$basedir字符串的长度是0,则执行。 if test -n "$basedir" ----如果$basedir字符串的长度不是0,则执行。 if test -s "/mysql/test.txt" -----如果文件存在,且内容大于0,也就是文件是有内容的,则执行。
3、查看文件中包含某个字符串
https://www.cnblogs.com/wendaozhe/p/16599575.html
[root@svn svn]# find .|xargs grep -ri "huanghuifang"
ASSoftFrameProject
Investment
KSLQ
PEProect
PlasticFilm
YCSY_MES
ZhiBan2_0
ZhiBan1_3