linux 中 read -a 和 -r选项

 

001、-a:  后跟一个变量,该变量会被认为是个数组,然后给其赋值,默认是以空格为分割符。

[root@pc1 test1]# read -a ay1          ## -a数据读入数组变量
aa bb cc 100 800
[root@pc1 test1]# echo $ay1
aa
[root@pc1 test1]# echo ${ay1[@]}       ## 输出数组的所有元素
aa bb cc 100 800
[root@pc1 test1]# echo ${#ay1[@]}      ## 输出数组的长度
5

 

002、-r: -r 屏蔽\,如果没有该选项,则\作为一个转义字符,有的话 \就是个正常的字符了。

[root@pc1 test1]# read -a ay1         ## 不加-r; \表示转移字符
aa \.bb cc dd 500
[root@pc1 test1]# echo ${ay1[@]}
aa .bb cc dd 500
[root@pc1 test1]# read -r -a ay2      ## 增加-r; \则为普通的字符
aa \.bb cc dd 500
[root@pc1 test1]# echo ${ay2[@]}
aa \.bb cc dd 500

 。

 

posted @ 2024-02-19 11:23  小鲨鱼2018  阅读(220)  评论(0编辑  收藏  举报