网站首页
本站精华
免费下载
游客:
注册
|
登录
|
会员
|
搜索
|
帮助
LoveUnix
»
编程开发 & Rational
» ksh 第3章<2>
‹‹ 上一主题
|
下一主题 ››
投票
交易
悬赏
活动
打印
|
推荐
|
订阅
|
收藏
标题: ksh 第3章<2>
xfc211
LU天使
UID 790
精华
39
积分 519
帖子 882
活跃指数 -11
LU金币 1905 个
LU金条 0 个
阅读权限 80
注册 2003-10-20
#1
大
中
小
使用道具
发表于 2003-11-12 10:55
资料
个人空间
短消息
加为好友
特定的参数:一些KSH专用的参数
?最后执行命令的状态,成功执行返回0;不成功执行返回1。
# date +%D
11/11/03
# print $?
0
$当前进程的ID;可以用来创建唯一的文件名
# print $$
13877
# print $$
13877
# touch /tmp/$0.$$
$ls /tmp
0 -rw-r--r-- 1 root other 0 Nov 11 09:19 ksh.13877
- 显示interactive and monitor options
# print $-
ism
ERRNO 显示最后一次系统出错的错误号
# print $ERRNO
13
$variable,${variable}
# CA=ca
# CA=$CAli
# print $CA
#
# CA=${CA}li
# print $CA
#cali
${# variable }
# print ${#CA}
4
${variable }
${ variable:-word },${ variable-word }
如果变量已经赋值或不为空,则退回赋值;如果变量没有赋值,退回word值
$ X=abc
$print ${X:-cde}
abc
$unset X
$print ${X:-cde}
cde
$print $X
$
但是X仍然保留不变。
${ variable:=word },${ variable=word }
如果变量已经赋值或不为空,则退回赋值;如果变量没有赋值,退回word值
$LBIN=/usr/bin
$print ${ LBIN:=/usr/local/bin}
/usr/bin
$unset LBIN
$print ${ LBIN:=/usr/local/bin}
/usr/local/bin
$print $ LBIN
/usr/local/bin
${ variable:?word },${ variable:?} ; ${ variable?word };${ variable? }
如果变量已经赋值或不为空,则退回赋值;如果变量没有赋值,打印 word值并退出。
$unset LBIN
$print ${ LBIN:?LBIN is not set}
/usr/local/bin
${ variable:+word };${ variable+word }
如果变量已经赋值或不为空,则退回word值
${ variable#pattern };${ variable##pattern }
从左边开始删除最小或最大匹配
# X=abcabcabc
# print ${X#abc*}
abcabc
# print ${X#abcd*}
abcabcabc
${ variable%pattern };${ variable%%pattern }
从右边开始删除最小或最大匹配
# print ${X%abc*}
abcabc
# print ${X%%abc*}
#
KSH支持四个查找、替换选项
${ variable//pattern1/ pattern2 },
${ variable/pattern1/ pattern2 },
${ variable#pattern1/ pattern2 },
${ variable%pattern1/ pattern2 },
# print $X
abcabcabc
# print ${X//abc/xyz}
xyz xyz xyz
# print ${X/abc/xyz}
xyz abc abc
子串
${ variable:start},${ variable:start:length}
# X=abcxyzdfg
# print $X
abcxyzdfg
# print ${X:0:3}
abc
# print ${X:3}
xyzdfg
队列变量。
一维队列从0到4096通过set –A or typeset命令设置
# set -A DAY Mon Tue Wed Thu Fri Sat Sun
# print $DAY
Mon
# print ${DAY[2]}
Wed
# print ${DAY[*]}
Mon Tue Wed Thu Fri Sat Sun
# print ${DAY[@]}
Mon Tue Wed Thu Fri Sat Sun
# print ${#DAY[*]}
7
队列变量属性
typeset – attribute variable[0]=value……
# typeset -u DAY u大写
# print ${DAY[*]}
MON TUE WED THU FRI SAT SUN
队列变量属性重新设置
set +A variable value0 value1 value2
quoting 引号 通常用在变量有空格或变量有特定的字符“” ` ` ‘ ’.
# X=123 345
ksh: 345: not found
# print $X
# X='123 345'
# print $X
123 345
# X='@#$%~!' ‘’ 隐藏变量中特定的字符
# print $X
@#$%~!
# print 'today is `date`'
today is `date`
# print today is`date`
today isWed Nov 12 09:52:44 CST 2003
“”功能同‘ ’但隐藏变量中特定的字符
# print '$X'
$X
# print "$X"
@#$%~!
` ` 通常输出命令值
投票
交易
悬赏
活动
LoveUnix
专项技术区
> AIX -IBM UNIX
> 其他UNIX & Linux
> i5 (AS400) & IBM大机
> PC Server & HPC
> 存储设备
> 备份软件
> 网络 & 安全
> 编程开发 & Rational
> DB2 & Informix
> ORACLE等数据库
> 中间件技术
行业综合区
> 职业咨询 前程无忧
> 培训认证 行业入门
> 行业应用 项目实施
> 产品信息 商务交流
> Free download下载
交流灌水区
> 蓝色太平洋
> 墨香雅韵
> 论坛建设
> 博客专区
当前时区 GMT+8, 现在时间是 2008-11-23 04:27
乐悠LoveUnix论坛-京ICP备05005823号
Thanks to
Discuz!
© 2001-2007 Power by
LoveUnix.net
Processed in 0.733049 second(s), 6 queries , Gzip enabled
TOP
清除 Cookies
-
联系我们
-
乐悠LoveUnix
-
Archiver
界面风格
----------
Discuz! 5 Default
新DISCUZ风格
控制面板首页
编辑个人资料
积分交易
公众用户组
好友列表
升级个人空间
基本概况
流量统计
客户软件
发帖量记录
论坛排行
主题排行
发帖排行
积分排行
在线时间
管理团队
管理统计