shell基础

1. 变量

VARNAME=value

export VARNAME=value:导出环境变量

输出变量:

echo $VARNAME

echo ${VARNAME}


2. 命令代换:'或$()

DATE=`date`

DATE=$(date)


3. 算术代换:$(())

VAR=300

VAR2=$(($VAR+3))


4. 单引号

保留字符串的字面值

VAR=aaa

echo '$VAR' --> 输出 $VAR


5. 双引号

会把变量转换成实际值

echo "$VAR" --> 输出aaa


6. 位置参数

$0:shell程序名

$1,$2,...:程序参数

$#:参数个数(不包括程序名)

$@:参数列表,可以用于for in中

$$:当前shell的进程号


7. 条件语句

if [ -f "filename" ]; then
...
elif [ -z "$xx" ]; then
...
fi


8. for循环

for VAR in list; do
...
done

e.g.,
hrs="00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23"
for hr in $hrs; do
    echo $hr
done

for((i=0;i<10;i++)); do
...
done

9. while循环

while [ expr ]; do
...
done

i=1
while [ $i -lt 10 ]
do
sed -n "${i}p" 111.txt
i=$(($i+1))       必须双层括号
done   

跳出循环:continue; 和break;


10. 字符串相关

替换:

${VAR/str1/replacement}

e.g.

a=aabbcc

echo ${a/aa/bb} -->输出bbbbcc


比较:

if [[ "$a" < "$b" ]; then
...
fi


截取:

${str:position:length}


你可能感兴趣的:(Date,shell,list)