1)将执行命令赋值给某个变量
可以使用$( )或者` `实现,例如:
a=$(echo "123")
echo $a
123
a=`echo "123"`
echo $a
123
2) 大小写转换
以下是大写转小写,反过来是大写转小写
tr命令:
val=`echo "ABCdefg"| tr '[:upper:]' '[:lower:]'`
echo $val
输出: abcdefg
3) 查看命令执行返回值
$? 执行正常为0,错误为非0
例如:
./exec_a_cmd
if [ $? != 0 ]
then
echo "Failed"
exit
fi
4) sleep睡眠
sleep 1 睡眠1秒
sleep 1s 睡眠1秒
sleep 1m 睡眠1分
sleep 1h 睡眠1小时
sleep 1d 睡眠1天
5) expr加减乘除
bash-3.00$ s=5
bash-3.00$ echo $s
5
bash-3.00$ s=`expr $s + 3`
bash-3.00$ echo $s
8
6) 获取函数返回值
7) if语句中报错 [: too many arguments
8) echo换行符丢失问题
比如文件file01中含有三行文字:
text1
text2
text3
执行cat file01|wc -l 查看行数结果是3,如果赋值给一个变量再通过echo查看,发现换行符没有了,解决方法是当echo多行变量时,加引号,例如下面的"$a"
$ a=`cat file01`
$ echo $a|wc -l
1
$ echo $a
text1 text2 text3
$ echo "$a"
text1
text2
text3
$