shell学习笔记2
来源:互联网 发布:java 九九乘法表直式 编辑:程序博客网 时间:2024/05/24 06:51
注意:shell变量赋值"="两边不能有空格。
shell中小括号,大括号结构和有括号的变量,命令的用法
1.${var} 加一个大括号来限定变量名称的范围,例如
var=test
echo ${var}AA
testAA
2.命令替换$(cmd)
shell扫描一遍命令行,发现了$(cmd)结构,便将$(cmd)中的cmd执行一次,得到其标准输出,再将此输出放到原来命令echo $(ls)中的$(ls)位置,即替换了$(ls),再执行echo命令
例如
$ ls
a b c
$ echo $(ls)
a b c
3.一串的命令执行()和{}
()和{}都是对一串的命令进行执行,但有所区别:
A,()只是对一串命令重新开一个子shell进行执行
B,{}对一串命令在当前shell执行
C,()和{}都是把一串的命令放在括号里面,并且命令之间用;号隔开
D,()最后一个命令可以不用分号
E,{}最后一个命令要用分号
F,{}的第一个命令和左括号之间必须要有一个空格
G,()里的各命令不必和括号有空格
H,()和{}中括号里面的某个命令的重定向只影响该命令,但括号外的重定向则影响到括号里的所有命令
这种计算是符合C语言的运算符,也就是说只要符合C的运算符都可用在$((exp)),甚至是三目运算符。
注意:这种扩展计算是整数型的计算,不支持浮点型.若是逻辑判断,表达式exp为真则为1,假则为0。
$ echo $((3+2))
5
$ echo $((3>2))
shell进阶篇
eval实现变量的间接引用
x='abc def'
y='$x'
echo $y
$x
eval echo $y
abc def
函数的定义和使用
function foo() # foo为函数名
{
local a=$1; # 局部变量
echo $a;
return 0; # 返回值
}
foo “cool!” # 函数调用
echo $? # 打印返回值
自定义函数 – 16进制转点分十进制
a()
{
local str=$1
echo -n $((16#${str:0:2}))
str=${str:2}
if [ "x$str" = "x" ]
then
echo; return
else
echo -n "."; a $str
fi
}
#Usage
a "DDB14CCF"
- shell学习笔记2
- shell学习笔记2
- SHELL学习笔记2
- Shell学习笔记2
- Linux Shell 学习笔记2:Shell变量
- Shell编程学习笔记(2)
- linux shell 学习笔记2
- Linux Shell学习笔记2
- SHELL学习笔记(2)
- Unix Shell 学习笔记【2】
- shell script学习笔记2
- linux Shell学习笔记2
- shell脚本语言学习笔记-2
- Linux学习笔记-shell(2)
- Shell学习笔记(2)
- [Bash Shell] Shell学习笔记
- [Bash Shell] Shell学习笔记
- shell shell学习笔记001--什么是shell?
- 快排(随机取数)
- - (NSString *)stringByExpandingTildeInPath
- JQuery不同版本区别
- IOS 设置系统音量 (已实践,设置时会弹出系统的音量显示,调用很方便)
- Android支持多屏幕(2)How to Support Multiple Screens
- shell学习笔记2
- iframepage自试应高 通过http访问
- oracle sql语言like模糊查询–通配符
- eclipse SVN插件更换、修改svn帐号
- XP你还在用?小心网上的“安全工具”
- 【opencv】直方图均衡化
- STL 迭代器
- android 发送e-mail实例
- 浏览器图片加载是并行的么?再就是Js和CSS呢?是串行的?