搜索
简帛阁>技术文章>Linux Shell编程变量赋值和引用

Linux Shell编程变量赋值和引用

我们可以使用任意一种文字编辑器,比如gedit、kedit、emacs、vi等来编写shell脚本,它必须以如下行开始(必须放在文件的第一行):
#!/bin/sh 
... 
注意:最好使用“!/bin/bash”而不是“!/bin/sh”,如果使用tc shell改为tcsh,其他类似。  
符号#!用来告诉系统执行该脚本的程序,本例使用/bin/sh。编辑结束并保存后,如果要执行该脚本,必须先使其可执行:
chmod +x filename 
此后在该脚本所在目录下,输入 ./filename 即可执行该脚本。
Shell编程中,使用变量无需事先声明,同时变量名的命名须遵循如下规则:
首个字符必须为字母(a-z,A-Z)
中间不能有空格,可以使用下划线(_)
不能使用标点符号
不能使用bash里的关键字(可用help命令查看保留关键字)
需要给变量赋值时,可以这么写:
变量名=值
要取用一个变量的值,只需在变量名前面加一个$ ( 注意: 给变量赋值的时候,不能在"="两边留空格 )
#!/bin/sh 
# 对变量赋值: 
a="hello world"   #等号两边均不能有空格存在 
# 打印变量a的值: 
echo "A is:" $a 
挑个自己喜欢的编辑器,输入上述内容,并保存为文件first,然后执行 chmod +x first 使其可执行,最后输入 ./first 执行该脚本。其输出结果如下: 
A is: hello world 
有时候变量名可能会和其它文字混淆,比如:
num=2 
echo "this is the $numnd" 
上述脚本并不会输出"this is the 2nd"而是"this is the ";这是由于shell会去搜索变量numnd的值,而实际上这个变量此时并没有值。这时,我们可以用花括号来告诉shell要打印的是num变量:
num=2 
echo "this is the ${num}nd" 
其输出结果为:this is the 2nd
注意花括号的位置:
num=2 
echo "this is the {$num}nd" 
其输出结果为:this is the {2}nd
需要注意shell的默认赋值是字符串赋值。比如:
var=1 
var=$var+1 
echo $var 
打印出来的不是2而是1+1。为了达到我们想要的效果有以下几种表达方式:
let "var+=1" 
var=$[$var+1]       
var=`expr $var + 1`#注意加号两边的空格,否则还是按照字符串的方式赋值。 
注意:前两种方式在bash下有效,在sh下会出错。
let表示数学运算,expr用于整数值运算,每一项用空格隔开,$[]将中括号内的表达式作为数学运算先计算结果再输出。
Shell脚本中有许多变量是系统自动设定的,我们将在用到这些变量时再作说明。除了只在脚本内有效的普通shell变量外,还有环境变量,即那些由export关键字处理过的变量 
Shell编程中,使用变量无需事先声明,同时变量名的命名须遵循如下规则:首个字符必须为字母(az,AZ)中间不能有空格,可以使用下划线(_)不能使用标点符号不能使用bash里的关键字(可用help命令
原本的find命令:find/apps/Devops/jenkins/workspace/swapping/target/name'*swapping*jar'错误的命令:SOURCE_PATH/ap
间接变量引用如果第一个变量的值是第二个变量的名字,从第一个变量引用第二个变量的值就称为间接变量引用。设有如下两个表达式:variable1variable2variable2value间接引用是通赤v
一、Shell简单介绍shell是一个用C语言编写的程序,它是用户使用Linux的桥梁,又是一种程序设计语言。Shell是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的
uofangimg{maxwidth:100%!important;height:auto!important}介绍变量shell脚本中必不可少的组成部分,在脚本中使用变量不需要提前声明。在bas
变量的意义我们在使用Linux命令或脚本的时候,会有一些输出,那么这些输出的信息可以用变量临时存储,以备我们下一条命令或脚本使用。变量的定义变量的定义建议用一个有意义的英文单词来代表变量,不要使用简
shell编程变量:Linuxshell编程基础中的变量。包括Bash变量的分类变量的详细使用,如:用户自定义变量、环境变量、语系变量、位置参数变量预定义变量。1:什么是Bash变量变量:计
Shell支持自定义变量。定义变量定义变量时,变量名不加美元符号($),如:代码如下:variableNamevalue注意,变量等号之间不能有空格,这可能你熟悉的所有编程语言都不一样。同时,
目录相关cd与分别表示当前目录父目录~与$HOME都是指当前用户的主目录cd–切换到上一次所在的目录(不一定是父目录)pwdpwd显示当前目录$PWD与$OLDPWD两个变量表示当前目录上一次所在
章目录前言1编写第一个Shell程序2如何运行Shell程序3Shell命令的退出状态4复合命令总结前言这里记录Shell编程的学习笔记,为巩固基础并分享给大家。1编写第一个Shell程序编写fir