美文网首页
shell脚本-数学计算&输入输出重定向

shell脚本-数学计算&输入输出重定向

作者: 贝克街的猫大哥呀 | 来源:发表于2017-10-11 14:48 被阅读0次

输出重定向:

就是说本来应该直接输出在屏幕上,现在要输出到某个文件里

#!/bin/bash

ls -l > text

就这样很简单,   >指向输出的位置,就是一个叫text的文件,如果没有这个文件,会在当前目录自动创建这个文件

永久输出重定向:

如果一个shell脚本里的所有输出,你都要转移到某个文件。那么一行一行的输入这个 > 也太麻烦了吧,所以,可以在脚本开始的时候,写入一个永久输出重定向

#!/bin/bash

exec 1>text1

echo "参数个数:$#"

echo "遍历开始"

那么所有的输出,都不会在屏幕上显示了,会重定向到text1这个文件里去了

那1表示什么呢,1是标准输出的意思,2是标准错误

exec 2>text1

比如说这样就表示将错误信息输出到text1

如果是追加,而不是覆盖的话,要用 >> 来表示。

输入重定向:

就是将某个文件的内容赋值给某个变量

#!/bin/bash

wc < text

echo $wc

比如此,但是输出的,并不是text文件里的内容,而是里面有几行,几个单词,多少个字节。

数学计算:

就是上一篇讲到的东西,这里再提一下:

#!/bin/bash

a=10

b=$[ $a * 20 ]

echo $b

这里就用到了算计,shell中的计算简写就是这样的固定格式,那原来的写法是啥呢?

b=$(expr $a *20 ) 

就是用expr关键字。这里是不支持浮点数的,只能是整数

若想用浮点数,则需要用bc命令 

一般是配合EOF重定向:

f=( bc << EOF

a1=30 * 40

a1/3

EOF

)

这样输出f,就能有小数点了

相关文章

网友评论

      本文标题:shell脚本-数学计算&输入输出重定向

      本文链接:https://www.haomeiwen.com/subject/jzgiyxtx.html