基本shell

(1) 输出重定向 >

date > test1 注意: >> 为追加内容

(2)输入重定向 <
hadoop@master:~/shell_test/beta$ wc test1 16 43 test1 注意: 第一个是行数,单词数,字节数

(3)<< 标记单词的开始和末尾
hadoop@master:~/shell_test/beta$ wc < fjsd fsdjlf > 1 f fd > fd > EOF 36 22

(4)管道
hadoop@master:~/shell_test/beta$ more test1 | sort 12 2016年 11月 13日 星期日 21:36:31 CST 2016年 11月 13日 星期日 21:46:41 CST qwww

【基本shell】(5)退出脚本状态
hadoop@master:~/shell_test/beta$ more test1 | sort 12 2016年 11月 13日 星期日 21:36:31 CST 2016年 11月 13日 星期日 21:46:41 CST qwww hadoop@master:~/shell_test/beta$ echo $? 0

0命令成功执行 1 通过未知错误 2误用shell命令 126 命令不可执行 127 没找到命令 128无效退出参数 128+x linux 信号x的严重错误 130 命令通过CTRL+C 终止 255 退出状态码越界

(6)数学计算 expr
hadoop@master:~/shell_test/beta$ expr 9 - 3 6 //shell中 #!/bin/bash var1=10 var2=20 var3=`$var1*$var2`

[]号进行运算
#!/bin/bash # var1=100 var2=200 var3=300 var4=$[$var1 * ($var2 - $var3)] echo $var4 注意: 只支持整数

bc浮点数运算
#!/bin/bashvar1=20 var2=3.14159 var3=`echo "scale=4; $var1*$var1" | bc` var4=`echo "scale=4; $var2*$var2" | bc` echo "the result is $var4"the result is 9.86958

使用内敛运算
#!/bin/bashvar1=10.46 var2=43.67 var3=33.2 var4=71var5=`bc << EOF scale = 4 a1 = $var1 * $var2 b1 = $var3 * $var4 a1 + b1 EOF ` echo the result is for this mess is $var5 hadoop@master:~/shell_test/beta$ ./test4 the result is for this mess is 2813.9882

(7)$((9+3)) 同样只能支持整数运算
注:在shell 中$() 与 ``等效。 中间包含命令语句执行,返回执行结果。

    推荐阅读