shell parameter expansitions
type test
type -a test
math calculate:
echo $((1+2*3))
parameter expansition:
bash-4 introduced features:
var=student
echo ${var^} //Student
echo ${var^^} //STUDENT
var=STUDENT
echo ${var,} //sTUDENT
echo ${var,,} //student
bash2 introduced features:
${var//PATTERN/STRING}:replace all instances of pattern with string
passwd=12345678
printf "%s\n" "${passwd//?/*}" //********
${var:OFFSET:LENGTH}:return a substring of $var
var=student
echo ${var:0:3} //stu
POSIX SHELL
posix shell introduced some expansions from kornshell.
main returning the length and removing a pattern from the beginning
or end of a variable's contents.
${#var}:length of variable's contents
var=student
echo "${#var}" //7
${var%PATTERN}:remove the shortest match from the end
var=tomorrow
echo ${var%o*} //tomorr
${var%%PATTERN}:remove the longgest match from the end
var=tomorrow
echo ${var%%o*} //t
${var#PATTERN}:remove the shortest match from the beginning
var=tomorrow
echo ${var#*o} //morrow
${var##PATTERN}:Remove the longest match from the beginning
echo ${var##*o} //w
${var:-default} and ${var-default}: use default values
${var:-default}
if the var is unset or empty, then use default
var=
echo ${var:-default} //default
unset var
echo ${var:-default} //default
${var-default}
if the var is unset , then use default , just this case
unset var
echo ${var-default} //default
var=
echo ${var-default} //
shell parameter expansitions的更多相关文章
- bash shell parameter expansion
1 ${parameter%word}和${parameter%%word} ${parameter%word},word是一个模式,从parameter这个参数的末尾往前开始匹配.单个%进行最短匹配 ...
- Shell parameter expansion
使用sh写一些小型的脚本会使工作更加简单.有部分内容可能大家都比較陌生(至少我是这样). 就是变量有关的參数展开,以下就是一些简单的描写叙述和使用方法.能够使代码更加简洁 展开运算符 替换运算 ${v ...
- SH Script Grammar
http://linux.about.com/library/cmd/blcmdl1_sh.htm http://pubs.opengroup.org/onlinepubs/9699919799/ut ...
- 学习bash
工作8年,前6年基本是Windows环境下,也就是个鼠标党:两年前换工作开始用linux,也就开始了领略了命令行的强大,无论是直接在命令行组合命令,也还写几行简单的shell脚本,其能完成的功能往往令 ...
- Bash Scripting Learn Notes
References: [1] http://www.tldp.org/LDP/Bash-Beginners-Guide/html/ 1. Executing programs from a scri ...
- saltstack 基本操作
一.常用操作 ①.模块查看 #查看全部模块 [root@k8s_master ~]# salt '*' sys.list_modules # "*"为所有node节点 (此处可以写 ...
- Linux environment variables (环境变量)
Environment variables are often used to store a list of paths of where to search for executables, li ...
- Bash脚本编程之字符串处理
简介 其实这里说得字符串处理,对应的是bash官网中的[Shell Parameter Expansion],不过直接去看这部分内容实在是太难以理解了.就按照马哥所说的字符串处理会比较好理解,平常使用 ...
- man bash
BASH(1) General Commands Manual BASH(1) NAME bash - GNU Bourne-Again SHell SYNOPSIS bash [options] [ ...
随机推荐
- Hadoop源码编译过程
一. 为什么要编译Hadoop源码 Hadoop是使用Java语言开发的,但是有一些需求和操作并不适合使用java,所以就引入了本地库(Native Libraries)的概念,通 ...
- CSS技巧(一):清除浮动
什么是CSS清除浮动? 在非IE浏览器(如Firefox)下,当容器的高度为auto,且容器的内容中有浮动(float为left或right)的元素,在这种情况下,容器的高度不能自动伸长以适应内容的高 ...
- Nancy之基于Nancy.Owin的小Demo
前面做了基于Nancy.Hosting.Aspnet和Nancy.Hosting.Self的小Demo 今天我们来做个基于Nancy.Owin的小Demo 开始之前我们来说说什么是Owin和Katan ...
- WPF阴影效果(DropShadowEffect)
<TextBlock Text="阴影效果" FontSize="32"> <TextBlock.Effect> <DropSha ...
- Java实现时间动态显示方法汇总
这篇文章主要介绍了Java实现时间动态显示方法汇总,很实用的功能,需要的朋友可以参考下 本文所述实例可以实现Java在界面上动态的显示时间.具体实现方法汇总如下: 1.方法一 用TimerTask: ...
- 【Unity】第13章 光照贴图和光影效果
分类:Unity.C#.VS2015 创建日期:2016-05-19 一.简介 在Unity 5中,Lighting是—种增强场景光照和阴影效果的技术,它可以通过较少的性能消耗使静态场景看上去更真实. ...
- 又一个半成品库 weblog rpc client
我基本上属于半成品专业户,去看我的github就知道. 下午又撸了一个weblog rpc client库,而这又一次证明了一个有技术但没有产品能力的程序员是没有卵用的. 因为当做好了库的雏形,但与具 ...
- wampserver安装配置
按步骤安装--选择指定浏览器-安装成功后显示绿色图标: 打开浏览器:将文件夹移入wampserver安装路径的www文件夹中:找到电脑IP 在手机端访问 IP/文件夹/demo.html即可
- JavaScript toUpperCase() 方法和 toLowerCase() 方法
1,toUpperCase() 方法用于把字符串转换为大写. 一个新的字符串,在其中 stringObject 的所有小写字符全部被转换为了大写字符. 语法为: stringObject.toUppe ...
- Creating a SharePoint Sequential Workflow
https://msdn.microsoft.com/en-us/library/office/hh824675(v=office.14).aspx Creating a SharePoint Seq ...