linux边学边记--变量键盘读取、数组与声明:read 、array、declare、变量修改及设置方式

1、read
[root@localhost zhangyf]# read [-pt] 变量名
参数:
      p后直接接提示符
      t后面接等待的秒数

例一:
[root@localhost ~]$ read atest
this is a test
[root@localhost ~]$ echo $atest
this is a test

例二:
[root@localhost ~]$ read -p "please keyin your name:" -t 30 name
please keyin your name:nancy
[root@localhost ~]$ echo $name
nancy

2.declare/typeset
declare/typeset:声明变量的属性。
[root@linux..]# declare [-aixr] variable
参数:
 -a:将后面的variable定义为数组(array)
 -i:将后面的variable定义为证书数字(integer)
 -x:用法与export一样,将后面的变量变成环境变量。
 -r:将一个variable设成只读(readonly),该变量不可更改内容,也不能取消设置。 

例1:让变量sum对100+300+50求和
[root@linux..]# declare -i  sum=100+300+50
[root@linux..]# echo $sum

3.数组属性array说明
数组设置方式:
[root@linux..]# arr=(0 1 2 3 4)   #定义数组
[root@linux..]# echo ${arr[*]}    ###输出数组,需要加{},优先级
[root@linux..]# echo ${#arr[*]}    #数组统计,在数组前面输入一个#号
[root@linux..]# echo ${!arr[@]}   #获取所有元素序号信息 

关于数组,此文讲解不错:http://blog.csdn.net/flowingflying/article/details/5171543

附件的变量设置功能
获取两种变量的方法:

[root@linux~]# echo $HOME
[root@linux~]# echo ${HOME}

修改变量
通过加一些字符标志,再使用比较字符串,即可修改变量内容。

例:1:变量内容呈现
[zhangyf@localhost home]$ vbird="/zhangyf/bash/test/test.b.sh"
[zhangyf@localhost home]$ echo $vbird
/zhangyf/bash/test/test.b.sh

例2:
在vbird变量中,从最前面开始比较,若开头为/,则删除两个/直接的所有数据,即/*/
[zhangyf@localhost home]$ echo ${vbird##/*/}
test.b.sh    ##删除了/zhangyf/bash/test/
[zhangyf@localhost home]$ echo ${vbird#/*/}
bash/test/test.b.sh    ##仅删除了/zhangyf/而已
#变量后面接##,后面字符串取“最长的”那段,如果仅有一个#,表示取最小的那一段。

例3:
如果从后面开始,删除/*?
[zhangyf@localhost home]$ echo ${vbird%%/*/}
/zhangyf/bash/test/test.b.sh    ##都没删除
[zhangyf@localhost home]$ echo ${vbird%%/*}
               ##删除完了
[zhangyf@localhost home]$ echo ${vbird%/*}
/zhangyf/bash/test/    ##仅删除了test.b.sh而已

例4:
将变量中得test替换为TEST
[zhangyf@localhost home]$ echo ${vbird/test/TEST}
/zhangyf/bash/TEST/test.b.sh
[zhangyf@localhost home]$ echo ${vbird//test/TEST}
/zhangyf/bash/TEST/TEST.b.sh
##如果变量后面接/,那么,表示后面是进行“替换”工作,而且仅替换第一个
#如果是//,则表示替换全部字符串

变量设置方式


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值