小鸟初学Shell编程(六)变量赋值

变量的意义

我们在使用Linux命令或脚本的时候,会有一些输出,那么这些输出的信息可以用变量临时存储,以备我们下一条命令或脚本使用。


变量的定义

变量的定义建议用一个有意义的英文单词来代表变量,不要使用简单的字母ab 这类的变量名定义。因为我们写好Shell脚本实际上是要给人看的,所以我们定义好的变量,是希望变量有具体的含义,能让阅读Shell脚本人能轻松的明白。

变量的命名规则:

  • 字母、数字、下划线
  • 不以数字开头

变量的赋值

为变量赋值的过程,称为变量替换

Shell脚本里变量是不区分变量类型的

变量赋值的规则:变量名=变量值
var=123
注意:赋值的等号左边右边是不能有空格的,如果出现空格那么执行的时候回进行报错

[[email protected] ~]# var=123
[[email protected] ~]#
[[email protected] ~]# var =123
-bash: var: command not found
[[email protected] ~]# var = 123
-bash: var: command not found

因为出现空格,Shell会认为前面的是命令而不是变量

使用let为变量赋值
[[email protected] ~]# let num=10+10
[[email protected] ~]# echo $num
20

let可以做简单的数字运算

将命令赋值给变量
[[email protected] ~]# ls_cmd=ls
[[email protected] ~]# ${ls_cmd}
anaconda-ks.cfg  install.log  install.log.syslog

还可以使用把命令赋值给变量,在使用变量的时候,相当于执行命令

将命令结果赋值给变量,使用$()或者``
[[email protected] ~]# file_list=$(ls /tmp)
[[email protected] ~]# echo ${file_list}
pear yum.log

[[email protected] ~]# file_list=`ls /tmp`
[[email protected] ~]# echo ${file_list}
pear yum.log

使用这种方式的好处,就是避免重复执行相同命令,增加服务器的开销,而是只执行一次命令,并把命令的结果保存到变量,做下一步的使用

变量值有空格等特殊字符可以包含在双引号""和单引号‘‘
[[email protected] ~]# var="1 2 3"
[[email protected] ~]# echo $var
1 2 3

[[email protected] ~]# var='a b c'
[[email protected] ~]# echo $var
a b c

当字符串需要双引号时,需要用单引号来定义字符串

[[email protected] ~]# var='"a" "b" "c"'
[[email protected] ~]# echo $var
"a" "b" "c"

当字符串需要单引号时,需要用双引号来定义字符串

[[email protected] ~]# var="'a' 'b' 'c'"
[[email protected] ~]# echo $var
'a' 'b' 'c'

双引号和单引号还有个区别,就是单引号里字符串不管是特殊字符都会被解释成普通的字符串

[[email protected] ~]# string="${var} , Shell"
[[email protected] ~]# echo $string
hello , Shell
[[email protected] ~]# string='${var} , Shell'
[[email protected] ~]# echo $string
${var} , Shell

小结

在Shell里变量的定义是不需要定义类型的,变量赋值的时候等号两边不能有空格,变量可以赋值Linux的命令,也可以赋值运行Linux命令返回的结果输出内容,也可以做简单的数字计算,并双引号和单引号定义的字符串是有一定的区别的,单引号定义的字符串都会被解释成普通的字符串,不管是否有特殊字符。

原文地址:https://www.cnblogs.com/xiaolincoding/p/11615688.html

时间: 2024-08-11 13:28:10

小鸟初学Shell编程(六)变量赋值的相关文章

小鸟初学Shell编程(七)变量引用及作用范围

变量引用 那么定义好变量,如何打印变量的值呢?举例下变量引用的方式. ${变量名}称作为对变量的引用 echo ${变量名}查看变量的值 ${变量名}在部分情况下可以省略成 $变量名 [[email protected] ~]# string="hello Shell" [[email protected] ~]# echo ${string} hello Shell [[email protected] ~]# echo $string hello Shell 那么有花括号括起来的变

小鸟初学Shell编程(一)认识Shell

开篇介绍 Linux里非常的有用的一个功能,这个功能就叫Shell脚本. Shell脚本在我日常开发工作里也占了非常重要的角色,项目中一些简单的工作我们都可以使用Shell脚本来完成,比如定时删除日志文件脚本.一键部署系统脚本等一些自动化的功能. 所以掌握好Shell脚本编程,处理一些自动化繁琐的事情会有事半功倍的效果.不管是Linux开发人员还是运维人员都有必要掌握Shell编程. 什么是Shell? Shell是命令解释器,用于解释用户对操作系统的操作. 简单的理解就是,Shell会把用户所

小鸟初学Shell编程(四)管道符

管道作用 管道实际上就是进程之间的一个通信工具,那么用在Linux命令中主要是方便两条命令互相之间可以相互通信. 管道符 管道符(匿名管道)是Shell编程经常用到的通信工具. 管道符是"|",主要是把两个应用程序连接在一起,然后把第一个应用程序的输出,作为第二个应用程序的输入.如果还有第三个应用程序的话,可以把第二个程序的输出,作为第三个应用程序的输入,以此类推. 如ls | grep test.sh,在当前文件过滤出test.sh文件: [[email protected] /]#

shell编程之变量赋值

1.变量赋值: name=lbg 等号前后不能有空格 name="Lebron James" 变量值中有空格要用双引号 echo ${name} 用${}更保险 shopt -s -o nounset 设置"先声明再使用" 2.取消变量: unset 释放变量和函数的内存 3.位置参数: ${n}:输入的第n个参数($0表示脚本名字) $#:输入参数的数量 [email protected]:输入的所有参数 $!:输入的最后一个参数 $?:上一个命令的返回值(用于在

小鸟初学Shell编程(九)环境变量变量配置文件

介绍 在上一篇使用完了环境变量,并且知道PATH环境变量概念,那么我们对命令的执行就有了一定深入的理解.那么PATH环境变量或其他环境变量是保存在哪呢?那么这篇文章主要介绍环境变量配置文件. 配置文件 环境变量主要保存在以下四个文件和一个目录中: /etc/profile /etc/profile.d/ ~/.bash_profile ~/.bashrc /etc/bashrc 保存在/etc/目录下的配置文件,都是所有用户通用的配置,就是不管是root用户还是普通用户. 保存在~/用户家目录的

小鸟初学Shell编程(五)输入输出重定向

重定向作用 一个进程默认会打开标准输入.标准输出.错误输出三个文件描述符. 重定向可以让我们的程序的标准输出.错误输出的信息重定向文件里,那么这里还可以将文件的内容代替键盘作为一种标准输入的方式. 重定向符号 输入重定向符号"<" 输出重定向符号">",">>","2>","&>" 输入重定向功能 01 输入重定向符号"<"的作用: 会把

小鸟初学Shell编程(三)脚本不同执行方式的影响

执行命令的方式 执行Shell脚本的方式通常有以下四种 方式一:bash ./test.sh 方式二:./test.sh 方式三:source ./test.sh 方式四:. ./test.sh 执行方式的区别 方式一bash方式执行脚本的话,会在当前的终端下面产生一个bash子进程来运行脚本,所以对当前的环境是没有影响的. [[email protected] usr]# bash ./test.sh 方式二./test.sh的方式运行,则脚本第一行声明是哪个Shell解释器就会产生哪个She

小鸟初学Shell编程(二)编写简单的Shell脚本

Shell脚本 编写Python.PHP脚本通常需要掌握语言的函数,那么Shell脚本则不需要,只需要掌握Linux命令就可以编写Shell脚本,因为Shell脚本就是由多个Linux命令组成,通过将多个Linux命令组合保存成一个脚本文件,可直接给其他人使用. 组合命令 进入一个目录,查看目录的文件,这个过程分别需要执行两条命令,分别是cd 和ls. 分开执行两个命令的形式如下: [[email protected] usr]# cd /usr/ [[email protected] usr]

第二章 Shell编程之变量

Shell编程之变量 一 Bash变量与变量分类 Bash是Linux中的标准Shell,因此经常称Bash为Shell. 1. 变量命名规则 变量名可以由字母.数字.下划线组成,但必须以字母与下划线开头: 变量名的长度不能超过255个字符: 变量名在有效范围必须唯一: 在Bash中,变量的默认类型都字符串型: 2. 变量按照存储类型分类 默认类型是字符串型. 字符串型,赋值时单双引号皆可: 整形: 浮点型: 日期型: 二 用户自定义变量 变量名与变量值都是用户自定义的,就是说可以由用户控制修改