linux shell编程对变量的赋值
linux shell编程对变量的赋值
shell对变量的赋值,所有的.变量都是由字符串组成,不需要对变量名预先声明,而且有很多关键字供编程者使用。下面列举例子详细说明。 在终端下建立文件 #vi
#!/bin/sh
#set a variable a
a="hello world"
#print a
echo "A is :"
echo $a
在这个程序当中,可以看到shell编程与C编程的区别,没有那么严格的语法,在每句不需要加“;”,
而且在shell中引用变量的时候前面加“$”。
1 当变量名与其他文字混淆的时候,需要加“{}”
#!/bin/sh
# set a variable num
num=2
echo "the variable num is $numnd"
运行程序后,答案并不是 the variable num is 2nd,而是什么都没有输出。因为bash会寻找numnd变量,但是并没有给这个变量赋值。所以将程序改为:
echo "the variable num is {$num}nd"
2 默认变量
$#:传入脚本的命令行参数个数
$*:所有命令行的参数值,而且各个参数值之间有空格表示
$0:命令本身,就是要执行的shell文件名
$1:第一个命令行参数
$2:第二个命令行参数
$3
$4
example:
#!/bin/sh
echo "number of vars:"$#
echo "number of vars:"$0
echo "number of vars:"$*
echo "number of vars:"$1
echo "number of vars:"$2
echo "number of vars:"$3
运行./file 11 22 33
输出结果:
3
file
11 22 33
11
22
33
3局部变量
在变量首次赋值是加关键字local可以声明为局部变量。
#!/bin/sh
hello="aa"
echo $hello
function fucn1{
local hello="bb"
echo $hello
}
func1
echo $hello
-
计算机二级c++主要考试内容
C++是一种面向对象的计算机程序设计语言。C++这个词在中国大陆的程序员圈子中通常被读做C加加,而西方的程序员通常读做Cplusplus,CPP。下面是小编整理的关于计算机二级c++主要考试内容,欢迎参考!基本要求1.掌握C++语言的基本语法规则。2.熟练掌握有关类与对象的相...
-
2016年最新J2EE面试题及答案
J2EE核心是一组技术规范与指南,其中所包含的各类组件、服务架构及技术层次,均有共同的标准及规格,让各种依循J2EE架构的不同平台之间,存在良好的兼容性,解决过去企业后端使用的信息产品彼此之间无法兼容,企业内部或外部难以互通的窘境。下面本站小编为大家整理了关于...
-
2016年J2EE认证试题(附答案)
J2EE用来建设大型的分布式企业级应用程序。或者用更时髦的名词说就是电子商务应用程序。下面本站小编为大家推荐的是J2EE认证考试题,希望对大家有所帮助!一、基础问答1.下面哪些类可以被继承?java.lang.Thread(T)java.lang.Number(T)java.lang.Double(F)java.la...
-
2017年计算机二级office备考相关知识积累
多媒体技术从不同的角度有着不同的定义。比如有人定义多媒体计算机是一组硬件和软件设备;结合了各种视觉和听觉媒体,能够产生令人印象深刻的视听效果。下面是小编整理的关于计算机二级office备考相关知识积累,欢迎大家参考!一、多媒体技术的概念与应用。1.多媒体...