Shell编程之二——read ,array

一、read 的用法

  作用:读取键盘的输入

  用法:

  ①、简单的shell读取;

  

    注意:如果read后面没有加变量的话,默认赋值给REPLY

[root@localhost opt]# read         (read后面没有加变量名,默认赋值给REPLY)
123456
[root@localhost opt]# echo $REPLY
123456
[root@localhost opt]# 

  ②、从脚本里面读取;

[root@localhost opt]# ll
total 1756
-rw-r--r--. 1 root root     158 May 21 19:49 hosts
-rwxr-xr-x. 1 root root 1783106 May 26 18:36 putty-0.62.tar.gz
-rw-r--r--. 1 root root       3 May 21 19:49 xx
-rwxr-xr-x. 1 root root      79 Jun  5 21:34 xx.sh
[root@localhost opt]# vim zz.sh
[root@localhost opt]# cat zz.sh 
#!/bin/bash echo "qin shu ru ni de ming zi" read name echo "huan yin ni: $name" [root@localhost opt]# chmod +x zz.sh [root@localhost opt]# ./zz.sh qin shu ru ni de ming zi machine huan yin ni: machine [root@localhost opt]# 

也可以下面的写法:

[root@localhost opt]# vim zz.sh 
[root@localhost opt]# cat zz.sh 
#!/bin/bash
#echo "qin shu ru ni de ming zi"
#read name
read -p "qin shu ru ni de ming zi " name       (注意read -p 的用法,不换行直接键盘输入)
echo "huan yin ni: $name"
[root@localhost opt]# ./zz.sh qin shu ru ni de ming zi machine huan yin ni: machine [root@localhost opt]# 

二、数组array的用法

  1、数组的定义;  xx=(aa bb cc dd)

  2、查看数组里面的某一个元素;     echo ${xx[2]}      (注意:下标是从0开始的)

  3、查看数组里面所有的元素;    echo ${xx[*]}     或者 echo ${xx[@]}        *  @

  3、查看数组的卷标(所有下标);  echo ${!xx[*]}    或者 echo ${!xx[@]}      !

  4、查看数组里面元素的个数;    echo ${#xx[*]}   或者 echo ${#xx[@]}      #

  forexample:

  

//数组的定义
[root@localhost opt]# mm=(aa bb cc dd )    (元素之间没有逗号和分号)

//查看数组里面的某一个元素
[root@localhost opt]# echo ${xx[0]}
aa
[root@localhost opt]# echo ${xx[3]}
dd
[root@localhost opt]# echo ${xx[4]}       (数组下标是从0开始的) 

[root@localhost opt]# 

//查看数组里面的所有元素 (*/# 都可以)       
[root@localhost opt]# echo ${xx[*]}
aa bb cc dd
[root@localhost opt]# echo ${xx[@]}
aa bb cc dd
[root@localhost opt]# 

//查看数组的所有下标  (!)
[root@localhost opt]# echo ${!xx[*]} 0 1 2 3 [root@localhost opt]# echo ${!xx[@]} 0 1 2 3 [root@localhost opt]# //查看数组里面元素的个数  (#) [root@localhost opt]# echo ${#xx[*]} 4 [root@localhost opt]# echo ${#xx[@]} 4 [root@localhost opt]# 

猜你喜欢

转载自www.cnblogs.com/Panda-lk/p/9207996.html
今日推荐