vi常用命令:
vim + file: 从文件的末尾开始;
vim +/string file: 打开file,并将光标停留在第一个找到的string上。(N查找下一个)
read 命令从标准输入中读取一行,并把输入行的每个字段的值指定给shell变量
echo -e:,echo输出字符串,-e开启转义
echo输出linux自带命令需加反引号
>: 定向覆盖
>>:定向追加
如果没有arguments,那么%s用NULL(空)代替,%d用0代替
格式只指定了一个参数,但多出的参数仍然会按照该格式输出,format-string被重用
Shell中的test命令用于检查某个条件是否成立,它可以进行数值、字符和文件三个方面的测试
在sh/bash里可不能这么写,如果else分支没有语句执行,就不要写这个else
if [ $(ps -ef | grep -c "ssh") -gt 1 ]; then echo "true"; fi
for循环in列表使用位置参数时,echo输出的变量会自动换行
变量计算中不需要加上 $ 来表示变量,let "i++"
until(直到...为止) condition 一般为条件表达式,如果返回值为 false,则继续执行循环体内的语句,否则跳出循环。
函数:
参数返回,可以显示加:return 返回,如果不加,将以最后一条命令运行结果,作为返回值。 return后跟数值n(0-255)
函数返回值在调用该函数后通过 $? 来获得。
所有函数在使用前必须定义。这意味着必须将函数放在脚本开始部分,直至shell解释器首次发现它时,才可以使用,调用函数仅使用其函数名即可。
注意:$? 仅对其上一条指令负责,一旦函数返回后其返回值没有立即保存入参数,那么其返回值将不再能通过 $? 获得
函数与命令的执行结果可以作为条件语句使用。要注意的是,和C语言不同,shell语言中0代表 true,0以外的值代表false
输入输出重定向
Here Document