天天看点

shell的变量输入read讲解与实战

shell变量除了可以直接赋值或脚本传参外,还可以使用read命令从标准输人获得read为内置命令help read查看帮助

[语法格式]

read 【参数】【变量名】

【常用参数】

-p  prompt:设置提示信息

-t   timeout:设置输入等待的时间,单位默认为秒

范例1:read的基本读入

<code>[root@XCN ~]</code><code># read -p "please input two number:" a1 a2</code>

<code>please input two number:12 13</code>

<code>[root@XCN ~]</code><code># echo $a1</code>

<code>12</code>

<code>[root@XCN ~]</code><code># echo $a2</code>

<code>13</code>

提示:上面read -p 的功能可以用echo和read实现

实战:

把加减乘除计算的脚本改成通过read方式读入整数变量

<code>#!bin/bash</code>

<code>read</code> <code>-t 10 -p </code><code>"input number"</code> <code>a b</code>

<code>echo</code> <code>"$a-$b=$(($a - $b))"</code>

<code>echo</code> <code>"$a+$b=$(($a + $b))"</code>

<code>echo</code> <code>"$a*$b=$(($a * $b))"</code>

<code>echo</code> <code>"$a/$b=$(($a / $b))"</code>

<code>echo</code> <code>"$a**$b=$(($a ** $b))"</code>

<code>[root@XCN ~]</code><code># sh read.sh    </code>

<code>input number2 6</code>

<code>2-6=-4</code>

<code>2+6=8</code>

<code>2*6=12</code>

<code>2</code><code>/6</code><code>=0</code>

<code>2**6=64</code>

本文转自 baishuchao 51CTO博客,原文链接:http://blog.51cto.com/baishuchao/1941078