您的位置:首页 > 运维架构 > Shell

bash 内部变量

2013-06-22 22:13 197 查看
bash 内部变量
1、shift 命令实例
说明:shift 命令是将参数往后挪一位,第一个参数就没有了,第二个参数就是第一个参数[root@zhangjie scripts]# cat n.sh echo $1 $2
if [ $# -eq 2 ]
thenshift echo $1
fi[root@zhangjie scripts]# sh n.sh 1 21 22[root@zhangjie scripts]#
2、变量子串的常用操作❶ 反回变量字符串的长度[root@zhangjie scripts]# zj=zhangjie[root@zhangjie scripts]# zj="i am zhangjie"[root@zhangjie scripts]# echo $zj i am zhangjie[root@zhangjie scripts]# echo ${#zj}13
❷ 从变量字符串中的某一个字符的位置开始提取
[root@zhangjie scripts]# echo ${zj}i am zhangjie[root@zhangjie scripts]# echo ${zj:2}am zhangjie
[root@zhangjie scripts]# echo ${zj}i am zhangjie[root@zhangjie scripts]# echo ${zj:2} am zhangjie[root@zhangjie scripts]# echo ${zj:2:4}am z

说明:一共13个字符串,第二个开始是am,4表示一共提取4个字符
❸ 从变量字符串中以什么开头的开始删除最短匹配的字符[root@zhangjie scripts]# echo ${zj}i am zhangjie[root@zhangjie scripts]# echo ${zj#i am}zhangjie
❹ 从变量字符串中以什么开头开始删除最长匹配的字符[root@zhangjie scripts]# echo ${zj}i am zhangjie[root@zhangjie scripts]# echo ${zj##i am}zhangjie
❺ 从变量字符串中以什么结尾开始删除最短匹配的字符[root@zhangjie scripts]# echo ${zj}i am zhangjie[root@zhangjie scripts]# echo ${zj%zhangjie}i am
❻ 从变量字符串中以什么结尾开始删除最长匹配的字符[root@zhangjie scripts]# echo ${zj}i am zhangjie[root@zhangjie scripts]# echo ${zj%%zhangjie}i am
❼ 从变量字符串中替换匹配的字符[root@zhangjie scripts]# echo ${zj} i am zhangjie[root@zhangjie scripts]# echo ${zj/zhangjie/xiaozhang}i am xiaozhang
❽ 替换开头为某一字符串的内容为你想要替换的字符串内容
[root@zhangjie scripts]# echo ${zj}i am zhangjie[root@zhangjie scripts]# echo ${zj/#i am/Hi is}Hi is zhangjie
❾ 替换结尾为某一字符串的内容为你想要替换的字符串内容 [root@zhangjie scripts]# echo ${zj}i am zhangjie[root@zhangjie scripts]# echo ${zj/%zhangjie/xiaozhang}i am xiaozhang

本文出自 “张杰的技术博客” 博客,请务必保留此出处http://zhangjie.blog.51cto.com/539058/1227587
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: