文章目录

  • 一、变量的定义
  • 二、变量名称的规范
  • 三、使用变量
  • 四、在shell脚本中的变量种类
  • 五、字符的转译及变量的声明
  • 六、变量值的传递

一、变量的定义

变量即在程序运行过程中它的值是允许改变的量
变量是用一串固定的字符来表示不固定的值的一种方法
变量是一种使用方便的占位符,用于引用计算机内存地址,该地址可以存储 Script 运行时可更改的程序信息
在 shell 中变量是不能永久保存在系统中的,必须在文件中声明

二、变量名称的规范

eg:your_name="runoob.com"注意,变量名和等号之间不能有空格,这可能和你熟悉的所有编程语言都不一样。
同时,变量名的命名须遵循如下规则:
命名只能使用英文字母,数字和下划线,首个字符不能以数字开头。
中间不能有空格,可以使用下划线(_)。变量名称格式定义:WESTOS_LINUXWestos_LinuxwestoS_Linux
不能使用标点符号。
不能使用bash里的关键字(可用help命令查看保留关键字)。

三、使用变量

使用一个已经定义的变量,只要在变量名前面加美元符号
如:name='haiyan' #注意等号两边不要留空格echo $name echo ${name} #推荐使用, ehco $name+$name
变量名外面的花括号是可选的,加不加都行,加花括号是为了帮助解释器识别变量的边界,比如下面这种情况:
for skill in Ada Coffe Action Java; do
echo "I am good at ${skill}Script"
done
如果不给skill变量加花括号,写成echo "I am good at $skillScript",解释器就会把$skillScript当成一个变量(其值为空),代码执行结果就不是我们期望的样子了。
推荐给所有变量加上花括号,这是个好的编程习惯。
已定义的变量,可以被重新定义

四、在shell脚本中的变量种类

在 shell 中变量分为环境级变量、用户级变量、系统级变量这三种

环境级变量只在当前 shell 中生效, shell 关闭变量丢失
用户级变量写在用户的骨文件(.bash_profile)中,只针对当前用户生效,切换用户后就不再生效
系统级变量被写在系统的配置文件 /etc/profile 或者 /etc/profile.d/ 中,对于所有用户都生效
(在https://mp.csdn.net/mdeditor/99946984#这个博客有详解)

五、字符的转译及变量的声明

\ 转译单个字符
“” 弱引用,批量转译“”中出现的字符
强引用,批量转译‘’中出现的字符
‘’与“” 两者的区别在于,“”不能转译“",“`”,“!”,“$"
${} 变量声明
eg:
A=1
echo $Ab
echo ${A}b



六、变量值的传递

$1 脚本后的第一串字符串
$2 脚本后的第二串字符串
$3 脚本后的第三串字符串
$# 脚本后所跟的字符串的个数
$* 脚本后跟的所有字符串,模式为“1 2 3 ”
$@ 模式后跟的所有字符串,模式为“1”“2”“3”

vim test.sh编辑测试文件



## 七、补充内容
我们也可以通过这种模式来对自己要进行的变量进行简单的运算。
后续会有详细介绍

shell的命令行也属于一个变量,也可以进行修改


Linux——shell脚本的基础篇(变量定义、变量种类、变量操作)相关推荐

  1. Linux shell 脚本编程-实战篇(二)

    继: Linux shell 脚本编程-实战篇(一) 2. 创建与数据库.Web及电子邮件相关的脚本 2.1 MySQL 数据库 2.1.1 MySQL 数据库安装 到 http://repo.mys ...

  2. 详细介绍Linux shell脚本系列基础学习(列表)

    本系列适合Linux初学者,属于Linux入门级教程,主要介绍了Shell的分类.语法格式以及脚本的使用和编写格式等. 不断更新中,是Shell学习的必读经典教程.现主要包含以下文章: Linux S ...

  3. Linux Shell脚本编程基础

    2 Linux Shell脚本编程基础 发表于: Linux, Shell, UNIX, 资源分享 | 作者: 谋万世全局者 标签: Linux,Shell,编程基础,脚本 本文作者:Leal 授权许 ...

  4. Linux shell 脚本编程-实战篇(三)

    继: Linux shell 脚本编程-实战篇(二) 3. 一些小有意思的脚本 3.1 发送消息 3.1.1 功能分析 对于这种简单的脚本,需要的功能不多.涉及的一些命令很常见,下面了解脚本所需的几个 ...

  5. Linux编写脚本查看mod,Linux shell脚本编写基础

    在进行linux测试时编写脚本是必不可少的,Shell脚本的名称可以随便定义,也不要什么后缀名,例如可以写abc,smartzip这类名称,运行时只要键入 ./smartzip就能运行脚本了.. 每行 ...

  6. linux sh 必要,Linux Shell学习之基础篇(不适合学习,仅为本人笔记)

    在学习Linux和OpenStack过程中,感觉不管是大规模部署部署还是运维,Shell脚本都已经是标配,所以学好脚本很有必要. 以下仅为Linux Shell的一些基础笔记,这里作为笔记记下. == ...

  7. Linux Shell脚本编程基础(11)

    实际上Shell是一个命令解释器,它解释由用户输入的命令并且把它们送到内核,不仅如此,Shell有自己的编程语言用于对命令的编辑,它允许用户编写由shell命令组成的程序.Shel编程语言具有普通编程 ...

  8. Linux shell脚本基础学习详细介绍(完整版)2

    详细介绍Linux shell脚本基础学习(五) Linux shell脚本基础前面我们在介绍Linux shell脚本的控制流程时,还有一部分内容没讲就是有关here document的内容这里继续 ...

  9. Linux基础篇--shell脚本编程基础

    Linux基础篇–shell脚本编程基础 本章内容概要  编程基础  脚本基本格式  变量  运算  条件测试  配置用户环境 7.1 编程基础 程序:指令+数据 程序编程风格:   过程式:以指令为 ...

  10. Linux shell脚本基础学习

    Linux shell脚本基础学习这里我们先来第一讲,介绍shell的语法基础,开头.注释.变量和 环境变量,向大家做一个基础的介绍,虽然不涉及具体东西,但是打好基础是以后学习轻松地前提. 1. Li ...

最新文章

  1. java接口测试入门
  2. 搭建dubbo项目解决dubbo.xml标签报错的问题
  3. mysql install语句_mysql8 参考手册--INSTALL COMPONENT语句
  4. 【Windows 逆向】OD 调试器工具 ( OD 工具简介 | OD 工具与 CE 工具对比 )
  5. 2019浙江C语言二级答案,2019年下半年二级C语言试题及答案
  6. python常用的装饰器库_Python中的各种装饰器详解
  7. 《程序设计技术》第二章例程
  8. jdk8 HashMap初始化和扩容机制
  9. oracle 得到父节点和子节点
  10. Invalid ADAPTORNAME specified. Type 'imaqhwinfo' for a list of available ADAPTORNAMEs. Image acquis
  11. Python+uiautomation 查找微信僵尸粉
  12. 计算机在配置windows update,电脑开机出现配置Windows update怎么办
  13. 二分图最佳匹配(KM算法)学习笔记
  14. OpenPose 命令行说明
  15. 医学自然语言处理(NLP)相关论文汇总之 NAACL 2022
  16. 浅谈分形艺术是什么?
  17. 全国结婚率连续5年下降,这届年轻人,为什么不敢结婚?
  18. 电脑上的ofd格式文件如何打开呢_ofd文件怎么打开用什么软件
  19. Mysql 带条件计数
  20. 完美解决OneNote for Windows 10无法同步问题

热门文章

  1. 40种顶级思维模型,学会任何1种都让你受用无穷,赶紧点赞收藏
  2. 考研数学中的三角函数公式
  3. 如何讲好一个故事(6个要素)
  4. css3实现鼠标移入图片划过一束光闪过效果
  5. linux拷贝4g以上文件夹,32位Ubuntu中支持超过4G的大内存的方法
  6. 广东工业大学22级机械考研经验分享
  7. 【NOWCODER】- Python:列表(一)
  8. rpm、lpm是什么意思?
  9. 阿里云服务器买完不知道如何使用(新手入门教程)
  10. ps的cc版本安装包以及破解包