Linux系统的shell脚本——变量

这篇具有很好参考价值的文章主要介绍了Linux系统的shell脚本——变量。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、shell变量的类型

shell脚本变量的类型一般由一下几种类型:

1、用户自定义变量

用户自定义变量顾名思义就是用户自己定义的变量,shell脚本没有数据类型,所有变量均被理解为字符串。所以变量可以无需定义直接使用,就像python中定义变量一样。

变量的使用方法:变量名=数值(字符串)

定义变量时需要注意的几点:

1)、变量的命名:变量的命名可以由数字、字母、下划线构成,但不能以数字开头。

2)、变量的赋值:变量赋值时等号左右两端不能出现空格。赋值的时候可以使用单引号或者双引号进行包覆,如:val1="abc"  val2='abc'。在单引号或者双引号内可以存储包含空格的字符串,比如:val3="hello world"。如果不加引号变量只会存储空格之前的字符串,遇到空格就会结束。

3)、可以在双引号包覆的字符串内引用变量,而单引号会原样输出,举个例子:有如下变量

val1="abc"   val2='abc' 

val3="hello world $val1" 

 val4='hello world $val1'

如果输出val3 会输出hello world abc 

输出val4则会输出hello world $val1

2、位置变量

简单来说位置变量类似于命令行参数。就比如你在终端输入命令 ls 可以带参数 -l -a等,位置变量就类似于这里的 l ,a

位置变量用"$数字" 表示,例如:$1,$2,$3……$n

$0表示脚本文件的文件名,$1表示命令行第一个参数,$2表示命令行第二个参数...以此类推。

linux shell 定义变量,Linux,shell,linux,运维,服务器,ubuntu,centos

在命令行传参的时候可以用双引号包覆传递存在空格的字符串!

3、预定义变量

预定义变量表示用一些特殊的字符存储一些特定的数据。预定义变量有以下几种:

1)$#:表示记录命令行参数的个数,不会记录$0

2)$@:表示记录所有的命令参数,不包含$0

3)$*:同&@功能相同

4)&?:返回上一条命令的结果。shell中0表示真,1表示假

4)$$:获取执行当前脚本的进程的进程ID。值得注意的是,执行该脚本文件的进程是由当前终端的子终端创建的,虽然我们获取到了进程ID,但是我们查看不到此进程,因为在脚本执行完成后,该进程就已经结束了。

linux shell 定义变量,Linux,shell,linux,运维,服务器,ubuntu,centos

4、环境变量

shell中的环境变量也就是全局变量。在shell中的环境变量在内存中存储有关shell会话和工作环境的数据,以便shell或者程序运行的脚本能够访问到他们。

在终端上使用shell命令:env可以查看当前系统中的所有环境变量。

linux shell 定义变量,Linux,shell,linux,运维,服务器,ubuntu,centos

 其中举例几个环境变量的作用:

1):SHELL:命令解释器路径

2):HOME:用户的主目录路径

3):USERNAME:用户名

4):PATH:命令执行查找的默认路径(命令解释器查找的默认路径)

5):PWD:当前终端操作的绝对路径,PWD和pwd区分开来,PWD表示的是环境变量,而pwd是shell命令。

shell变量的引用

变量的引用需要加上$符号,echo表示变量数据的输出。

方法:echo $变量名

linux shell 定义变量,Linux,shell,linux,运维,服务器,ubuntu,centos

 以上就是shell命令的变量的类型,包括如何使用变量。本人萌新,如果错误和补充还请大佬们在评论区指出错误以及做出补充,跪谢。文章来源地址https://www.toymoban.com/news/detail-654191.html

到了这里,关于Linux系统的shell脚本——变量的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Linux高级篇】什么是shell脚本,什么是shell变量

    目录 🍁什么是shell 🍂什么是shell脚本 🍂shell脚本能做什么 🍂学习shell需要哪些知识 🍂shell基本规范 🍂shell脚本五种运行方式 🍁shell变量 🍂变量命名规范 🍂shell变量定义的方式 🍃自定义变量 🍃系统环境变量 🍃预定义变量 🍃位置变量 🍃补充变量 🍂shell变量赋值 🍂

    2023年04月25日
    浏览(51)
  • Linux【脚本 04】Shell脚本传递参数的4种方式(位置参数、特殊变量、环境变量和命名参数)实例说明

    Shell脚本是一种命令语言,可以用于自动化执行各种任务。在脚本中,我们可以通过参数来传递信息,这样脚本就可以根据这些信息来执行特定的操作。本文将介绍如何在shell脚本中传递参数,包括位置参数、特殊变量、环境变量和命名参数。 1.1 解释器 #!/bin/bash 称为shebang或

    2024年02月06日
    浏览(83)
  • linux环境下Shell脚本中定义函数

    说实话,这是我第一次用Shell来定义函数,之前也写了很多shell脚本,但是体量都不大,所以基本上是按照需求罗列了多个命令来实现的,这次也是一样,但是我发现重复的地方太多了,所以还是要拿出看见本事“抽象函数”来解放我懒惰的手指 检测特定名称的进程是否存在

    2024年02月12日
    浏览(49)
  • lv3 嵌入式开发-5 linux shell脚本编程(概念、变量、语句)

     Shell脚本是利用 shell 的功能所写的一个程序。这个程序是使用纯文本文件,将一些 shell 的语法与命令(含外部命令)写在里面,搭配正则表达式、管道命令与数据流重定向等功能  第一个Shell脚本文件 变量来源于数学,是计算机语言中能储存计算结果或能表示值的抽象概念

    2024年02月10日
    浏览(79)
  • shell脚本——服务器巡检(自动化运维)

     目的   自动 获取集群内 多个主机 的内存、磁盘、cpu等信息 生成日志  准备    VMware虚拟主机IP在同一个网段(互相能ping通)             虚拟主机都有公钥免登录            修改主机IP  vi/etc/sysconfig/netwoek-scripts/ifcfg-ens160            设置主机名 hostnamectl set-ho

    2024年02月15日
    浏览(52)
  • 【Linux】在服务器上创建Crontab(定时任务),自动执行shell脚本

    业务场景:该文即为上次编写shell脚本的姊妹篇,在上文基础上,将可执行的脚本通过linux的定时任务自动执行,节省人力物力,话不多说,开始操作! 连上服务器后,在任意位置都可以执行: crontab -e 如果没有进入 编辑cron任务模式 根据提示查看我们的服务器上是否未安装crontab没有则

    2024年02月14日
    浏览(59)
  • linux中用shell脚本定时备份重要日志等文件【命令结果输出也在内。按月份自动创建时间自动规划到月份中】、linux中用shell脚本备份文件并自动scp汇总到一个服务器上

    现在甲方有一个需求:要求每月备份系统日志 问题: 1、有37台服务器需要备份且汇总到一

    2024年02月19日
    浏览(58)
  • Linux 系统shell脚本编程笔记——脚本入门

    目录 1、创建shell脚本文件  2、显示消息 3、 环境变量 4、用户变量 5、命令替换 ​编辑  6、重定向输入与输出 6.1、输出重定向  6.2、输入重定向 ​编辑 7、执行数学运算 7.1、expr命令 7.2、bc的基本用法  8、退出脚本 完整笔记请前往此处获取:https://download.csdn.net/download/qq

    2024年02月06日
    浏览(66)
  • Linux之实现Apache服务器监控、数据库定时备份及通过使用Shell脚本发送邮件

    目录  一、Apache服务器监控 为什么要用到服务监控? 实现Apache服务器监控 二、数据库备份 为什么要用到数据库备份? 实现数据库备份 三、Shell脚本发送邮件 为什么要用使用Shell脚本发送邮件? 实现Shell脚本发送邮件 在Linux中监控Apache服务器是非常重要的,原因如下: 保证

    2024年04月15日
    浏览(71)
  • Linux系统Shell脚本编程之条件语句

    Shell 环境根据命令执行后的返回状态值 \\\" $? \\\" 来判断是否执行成功,当返回值为0时表示成功,否则表示失败或异常(非0值)。 使用专门的测试工具 test 命令,可以对特定条件进行测试,并根据返回值(值为0)来判断是否成立。 test命令格式 文件测试指的是根据给定的路径名

    2024年01月25日
    浏览(71)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包