1 bash shell 脚本中哪个符号用于注释 ?
#
2 “>” 做什么 ?
重定向输出流到文件或另一个流。
3 如何在脚本文件中重定向标准输出和标准错误流到 log.txt 文件 ?
在脚本文件中添加 exec >log.txt 2>&1
命令。
4 echo ${variable:x:y}
x - 起始位置 #从位置0开始计算
y - 长度
例子:
variable="My name is Petras, and I am developer."
echo ${variable:11:6} # 会显示
Petras
a="helloworld"
$ echo ${a:2:5}
llowo
5 如何获取变量长度 ?
echo ${#variable}
a="helloworld"
echo ${#a}
10
6 如何打印变量的最后 5 个字符 ?
echo ${variable: -5}
冒号后有空格
a="helloworld"
echo ${a: -5}
world
7 ${variable:-10}
和 ${variable: -10}
有什么区别?
${variable:-10}
如果之前没有给 variable 赋值则输出 10;如果有赋值则输出该变量
${variable: -10}
输出 variable 的最后 10 个字符
8 如何只用 echo 命令替换字符串的一部分 ?
echo ${variable//pattern/replacement}
a="xiaoming"
echo ${a//ming/ab}
xiaoab
a="helloworld"
echo ${a//world/shell}
helloshell
9 [ $a == $b ]
和 [ $a -eq $b ]
有什么区别
[ $a == $b ]
用于字符串比较
[ $a -eq $b
] 用于数字比较
10 -
和==
的区别
=
用于为变量赋值
==
用于字符串比较
11 写出测试 $a 是否大于 12 (或者小于等于12)的命令 ?
[ a -gt 12 ] #不能直接输入该命令
[
a -gt 12 ] #不能直接输入该命令 [
b -le 12 ]
a=13
if [ $a -gt 12 ]
then echo "bigger"
else echo "small"
fi
b=5
if [ $a -le 12 ]
then echo "smaller than 12"
else echo "bigger than 12"
fi