首页 > 系统相关 >无涯教程-Linux - 变量声明

无涯教程-Linux - 变量声明

时间:2023-11-26 13:31:43浏览次数:43  
标签:教程 Shell NAME 示例 只读 无涯 Linux LEARNFK 变量

在本章中,我们将学习如何在Unix中使用Shell变量,变量不过是指向实际数据的指针, Shell使您可以创建,分配和删除变量。

变量名

变量名称只能包含字母(a到z或A到Z),数字(0到9)或下划线字符(_),按照约定,Unix shell变量将以大写字母命名。

以下示例是有效的变量名-

_ALI
TOKEN_A
VAR_1
VAR_2

以下是无效变量名称的示例-

2_VAR
-VARIABLE
VAR1-VAR2
VAR_A!

您不能使用诸如!、 * 或-之类的其他字符的原因是,这些字符对shell具有特殊的含义。

定义变量

变量定义如下-

variable_name=variable_value

如-

NAME="LEARNFK"

上面的示例定义了变量NAME,并为其分配了值" LEARNFK"。如-

VAR1="LEARNFK"
VAR2=100

访问变量值

要访问存储在变量中的值,请在其名称前加上 美元符号( $)-

如,以下脚本将访问已定义变量NAME的值并将其打印在STDOUT上-

#!/bin/sh

NAME="LEANRFK"
echo $NAME

上面的脚本将产生以下值-


只读变量

Shell提供了一种使用只读命令将变量标签为只读的方法,将变量标签为只读后,其值将无法更改。

如,以下脚本在尝试更改NAME的值时生成错误-

#!/bin/sh

NAME="LEARNFK"
readonly NAME
NAME="learnfk"

上面的脚本将产生以下输出-

/bin/sh: NAME: This variable is read only.

删除变量

删除变量将指示Shell程序从其跟踪的变量列表中删除该变量,取消设置变量后,将无法访问该变量中的存储值。

以下是使用 unset 命令取消定义的变量的语法-

unset variable_name

上面的命令取消设置已定义变量的值。这是一个简单的示例,演示命令如何工作-

#!/bin/sh

NAME="LEARNFK"
unset NAME
echo $NAME

上面的示例不打印任何内容,您不能使用unset命令来取消设置标签为只读的变量。

变量类型

当Shell运行时,存在三种主要类型的变量-

  • Local Variables               -  局部变量是存在于Shell程序当前中的变量。

  • Environment Variables - 环境变量可用于Shell程序的任何子进程。

  • Shell Variables                - Shell变量是设置的特殊变量,Shell要求变量才能正常运行。

参考链接

https://www.learnfk.com/linux/linux-using-variables.html

标签:教程,Shell,NAME,示例,只读,无涯,Linux,LEARNFK,变量
From: https://blog.51cto.com/u_14033984/8570273

相关文章

  • 如何在windows系统下安装适用于linux的windows子系统
    最近部分工作需要在linux系统下操作,想着在自己本本上安装个虚拟机,废了九牛二虎之力安装好了VMware及Ubuntu系统,但是其在主机和虚拟机间共享数据不是很方便。于是又废了半天劲安装了VMwaretools,设置了共享盘、并启动后自动挂载。一切搞定后,无意中发现windows下可以安装linux子系统......
  • 无涯教程-Linux - vi编辑
    在本章中,我们将了解vim编辑器在Unix中的工作方式。启动vi编辑器下表列出了使用vi编辑器的基本命令-Sr.No.Command&描述1vifilename如果尚不存在,则创建一个新文件,否则打开一个现有文件。2vi-Rfilename以只读模式打开现有文件。3viewfilename以只读模式......
  • Linux命令(132)之sshpass
    linux命令之sshpass1.sshpass介绍linux命令sshpass是用来实现非交换的ssh操作2.sshpass用法sshpass[参数]commandsshpass参数参数说明-p指定明文密码3.实例3.1.sshpass安装默认系统中没有sshpass命令,需要安装sshpassrpm包命令:yuminstallsshpass[root@logstash~]#yuminstal......
  • 无涯教程-Linux - 通讯管理
    在本章中,我们将详细讨论Unix中的网络通信程序,在分布式环境中,您需要与远程用户进行通信,并且还需要访问远程Unix计算机。ping实用程序ping命令将回显请求发送到网络上可用的主机。使用此命令,您可以检查您的远程主机是否响应良好。以下是使用ping命令的简单语法-$pinghostna......
  • python 解密linux密码
    Python解密Linux密码简介在Linux系统中,用户的密码通常被加密存储在/etc/shadow文件中,以确保用户密码的安全性。这种加密方式称为密码哈希算法,它将用户密码转换为一串不可逆的密文。然而,有时候我们需要解密这些密码,例如在恢复用户密码或进行密码破解时。本文将介绍如何使用Python......
  • 无涯教程-Linux - 环境变量
    在本章中,我们将详细讨论Unix环境。Unix的一个重要概念是environment,它是由环境变量定义的。变量是我们为其分配值的字符串。分配的值可以是数字,文本,文件名,设备或任何其他类型的数据。如,首先我们设置一个变量TEST,然后使用echo命令访问它的值-$TEST="UnixProgramming"$ec......
  • FreeRTOS入门教程(任务通知)
    (文章目录)前言本篇文章将带大家学习任务通知的概念和使用方法。一、什么是任务通知FreeRTOS中的任务通知(TaskNotification)是一种轻量级的同步机制,允许一个任务通知另一个任务已发生的事件或条件。这对于多任务系统中的协作和同步非常有用。以下是有关FreeRTOS任务通知的详细......
  • 学习Linux用户管理与文件权限
    在Linux操作系统中,用户管理和文件权限是系统安全和管理的核心。本文将深入探讨Linux用户管理和文件权限的方方面面,帮助读者更好地理解和有效地运用这些关键概念。用户管理Linux用户管理是系统管理员不可或缺的一部分,它涉及到用户的创建、权限分配、密码管理以及安全性方面的考虑......
  • Linux-No.4
    一、进程管理了解进程的基本概念掌握查看进程的基本方法熟悉信号控制进程了解进程优先级原理 1.每个进程都有唯一的进程标识PID,一个PID只能标识一个进程2.进程状态是指程序执行过程中的变化。进程状态随着程序的执行和外界条件的变化而转换,一般分为三类:就绪态、运行态、阻......
  • linux文件管理
         ......