yunshichen

我相信人生是值得活的,尽管人在一生中必须遭受痛苦,卑劣,残酷,不幸和死亡的折磨,我依然深信如此.但我认为人生不一定要有意义,只是对一些人而言,他们可以使人生有意义. ---J 赫胥黎

精简Bash程序设计教程一:变量的使用


这篇教程是<Beginning  Linux Programming> 3rd 第二章的读书笔记.进行了一些小小的改动,更好突出主题.

1 起步走

这个例子说明了如何编写shell,声明变量,读入用户输入,引用变量

#!/bin/sh
#Author: Yunshichen
#Created at: 2009.08.19
a=Hello
echo 
"a is: "$a
#带空格的字符串必须要用双引号括起来.
#
a=Hello world!
#
echo "a is: "$a
a="Hello world!"
echo 
"a is: "$a
#=号两边不能有空格.
#
a = "Hello world!" 
echo "a is: "$a 

echo 
"What's your name?"
read aname
echo 
"hello, "$aname
exit 0

#知识点:
#
1>每个shell都以#!/bin/sh开头,文件名一般是xxx.sh
#
2>变量都存储为字符串
#
3>如果字符串包含空格,就必须用引号括起来
#
4>变量赋值时,等号两边不能有空格.
#
5>从终端读取变量不需要引号.
#
6>用$varname的方式引用变量值

把上述程序存为1.sh,打开文件所在的文件夹,依次执行

chmod +1.sh
.
/1.sh

就可以看到程序运行效果.

写完shell程序之后,都必须以上述方式改变文件属性,执行才能得到输出结果.以下不再赘述这个过程.

2 单引号的使用

#!/bin/sh
#Author: Yunshichen
#Created at: 2009.08.19
myvar="Hi there"
echo $myvar
echo 
"$myvar"
echo 
'$myvar'
echo \$myvar

echo Enter some text
read myvar
echo 
'$myvar' now equals $myvar
exit 0


#知识点:
#
1>单引号的作用
#
2>$可以通过\取消变量


3 参数变量

如果脚本程序在调用时带有参数,Linux就会创建一些额外的变量.姑且称之为参数变量

#!/bin/sh
#Author: Yunshichen
#Created at: 2009.08.19
echo "The separator between parameters is: $IFS"
echo 
"The program $0 is now running"
echo 
"There are $# parameters" 
echo 
"The first parameter was $1"
echo 
"The second parameter was $2"
echo 
"The parameter list was $*"
IFS
=''

echo 
"Using \$@,the parameter list was $@"

echo 
"Using \$*,The parameter list was $*"
exit 0


#知识点
#
1>$IFS : 分隔单词的字符,通常是空格,制表符和换行符.
#
1>$0: shell脚本的名字
#
2>$#: 传递给脚本的参数个数
#
3>$$: shell脚本的进程号
#
4>$1,$n..: 脚本程序的参数
#
5>$*: 在一个变量间列出所有参数,各个参数以IFS定义的分隔符分隔.
#
6>$@: 在一个变量间列出所有参数,不同的是参数不用IFS分隔.所以用$@比用$*更好.

将文件存为3.sh .输入 ./3.sh aaa bbb ccc 察看输出结果.












posted on 2009-08-19 23:30 Chenyunshi 阅读(495) 评论(2)  编辑 收藏 引用 所属分类: Ubuntu/linux

评论

# HHIS I souhld have thought of that! 2011-05-23 02:54 Judy

HHIS I souhld have thought of that!  回复  更多评论   

只有注册用户登录后才能发表评论。
<2024年11月>
272829303112
3456789
10111213141516
17181920212223
24252627282930
1234567

导航

统计

常用链接

留言簿(7)

随笔分类

随笔档案

文章分类

相册

搜索

最新评论

阅读排行榜

评论排行榜