变量+shell变量(1)

shell脚本第二天——变量 变量 变量名定义:字母,数字,下划线 开头:下划线,字母 格式: 变量名=值 如: 给name赋值为zhangsan name=zhangsan 打印变量格式: echo $变量名 如:打印变量name的值 echo $name 取消变量 unset 变量名 unset name 设置仅读变量 格式:readonly 变量名=值 如:设置仅读变量name值为zhangsan readonly name=zhangsan 当定义值里面包含空格的时候,需要给值加双引号或者单引号 name=zhang san 作为规范最好加上双引号。而且,再给变量赋值后,会自动转换成字符型。 在这里讲 立即下载


变量类型:运行Shell时,会同时存在三种变量
a):局部变量
在脚本或命令中定义,仅在当前Shell实例中有效,其他Shell启动的程序不能访问局部变量。


b):环境变量
所有的程序,包括Shell启动的程序,都能访问环境变量,有些程序需要环境变量来保证其正常运行。必要时Shell脚本也可以定义环境变量。


c):Shell变量
Shell变量是由Shell程序设置的特殊变量。Shell变量中有一部分是环境变量,有一部分是局部变量,这些变量保证了Shell的正常运行。






Shell 支持自定义变量

定义变量时,变量名不加 $ ,遵循规则如下:
1.首个字符必须为字母(a-z,A-Z)
2.中间不能有空格,可以使用下划线(_)
3.不能使用标点符号
4.不能使用bash里面的关键字。










变量的设置规则:
1.变量与变量内容以一个 “=” 连接
2.等号两边不能直接接空格符。
3.变量内容若有空格符可使用双引号或单引号将内容结合起来,
双引号内的特殊字符如 $ 等,可以保持原本的特性。
单引号内的特殊符号则仅为一般字符(纯文本)。
4.可用转义字符“\”将特殊字符(如$ \ 空格 回车 !等)变成一般字符。
5.在一串命令中,还需要通过其他命令提供的信息,可以使用反单引号“`命令`”或 “$ (命令)”,例如想要取得内核版本的设置:
“version=$ (uname-r)”  再 "echo $version" 可得“2.6.18-128.el5”
6.若该变量为了增加变量内容时,则可用“$变量名称”或 ${变量名称} 累加内容。如:PATH="$PATH":/home/bin
7.若该变量需要在其他子程序中执行,则需要以  export 来使变量变成环境变量  在我目前这个Shell的情况下,去打开另一个新的Shell,新的Shell 就是子进程。
8.通常大写字符为系统默认变量,自行设置变量使用小写字符,方便判断。








显示变量:echo $变量名


取消变量:unset 变量名


重新定义变量:已定义的变量可以被重新定义


只读变量:readonly 变量名  只读变量的名不能被改变


使用变量:
使用一个已经被定义的变量,只要在变量名前加 $ 即可,
如: your_name="Tanswer" 
echo ${your_name}
echo $your_name
  花括号是可选的,加花括号是为了帮助解释器识别变量的边界。推荐给所有变量都加




Shell 特殊变量

1.$$ :表示当前Shell进程的ID,即pid。
语法:echo $$
2.$0 :当前脚本的文件名
3.$n :传递给脚本或函数的参数,n是一个数字,表示第几个参数。
4.$# :传递给函数或脚本参数的个数
5.$* :传递给函数或脚本的所有参数
6.$? :上个命令的退出状态,或函数的返回值
7.$@ :传递给函数或脚本的所有参数。


注:$*与$@的区别:
不被双引号包含时,都以"$1""$2"..."$n"的形式输出所有参数

被双引号包含时,$* 会将所有的参数作为一个整体,以"$1 $2...$n"的形式输出所有参数;而$@ 会将各个参数分开,  以"$1""$2"..."$n"的形式输出所有参数。







保姆级教程:用Docker快速部署mpromonet/webrtc-streamer实现WebRTC直播(附常见问题解决) 本文提供了一份详细的Docker部署mpromonet/webrtc-streamer的实战指南,帮助用户快速搭建WebRTC直播服务。内容涵盖从环境准备、基础部署到进阶配置与性能调优的全过程,并针对容器网络、视频流配置、跨网访问等常见问题提供了解决方案,旨在实现低延迟的流媒体传输。 阅读详情

相关推荐

浅析ArcGis中的软件——ArcMap、ArcScene、 ArcGlobe、ArcCatalog

ArcMap:是集空间数据显示、矢量数据编辑、冲突数据检查(拓扑检查)、查询检索(地理编码)、统计(字段属性表)、报表生成、空间分析(ArcGIS Spatial Analyst)和高级制图(制图表达)等众多功能干一体的桌面应用平台软件。而且提供所见即所得的符号编辑器,令用户可以随心所欲地生成任意复杂的点、线、面符号。所支持的空间数据格式包括Arclnfo coverages、ESRI shapefiles、ArcSDE lavers、DXF、DWG、DGN、常见的图像格式、GRIDs、TINs等。

lxlmycsdnfree的博客 6563

shell变量-1

如果一个名为f1的文件内容如下 #f1中内容 1.1.1.1         2.2.2.2      3.3.3.3 4.4.4.4  5.5.5.5             6.6.6.6 7.7.7.7                                8.8.8.8 9.9.9.9 10.10.10.10 #最后是空行

w007d的专栏 809

华为MA5620配置宽带及语音实例

华为EPON配置实例1、公共部分和宽带PPPOE部分用串口用户名密码root/mduadminMA5620E>enableMA5620E#configMA5620E(config)#MA5620E(config)#sysnamebigcow/给设备起名字/****之前为公共部一、建vlan和地址bigcow(config)#vlan100...

weixin_33862041的博客 6346

shell:变量怎么加1

【代码】shell:变量怎么加1。

OceanStar的博客 3905

深度学习初探 - 入门 DL 主流框架

这个课程主要是引导大家入门TensorFlow、Theano、Keras 及 Caffe 几个主流的深度学习框架。在课程中有关各种算法的详细推导及思想我们不会做过多的陈诉,旨在通过让同学们动手操作搭建自己的神经网络模型,了解如何使用这些框架解决实际问题。课程会基于每个框架的官方文档,先带大家熟悉框架中基本的定义语法及常用函数(可看成深度模型的小零件),每个实验最后都会综合这些零件搭建一个简易的神经深度网络模型。这个项目十分适合具有一定python编程基础,对人工智能、深度学习感兴趣的同学。Theano。

2401_86435672的博客 1234

逐行逐句进一步了解SurroundOcc(一)

通过分析中的模型构建过程,理解了从配置文件到模型实例化的整个流程。构建过程的核心是通过build和等函数,逐步将配置文件解析并生成模型的各个模块对象,最终组合成一个完整的模型结构。这一过程涉及多个类和函数的调用,其中函数是生成对象的关键,它能够从配置字典中提取必要信息并生成对应的类实例。

lovely_yoshino的博客 8110

Shell 脚本里的变量怎么加1

shell 脚本里变量加一方式如下六种: 1、第一种整型变量自增方式 a=$(($a+1)) echo $a 2、第二种整型变量自增方式 a=$[$a+1] echo $a 3、第三种整型变量自增方式 a=`expr $a + 1` echo $a 4、第四种整型变量自增方式 let a++ echo $a 5、第五种整型变量自增方式 let a+=1 echo $a 6、第六种整型变量自增方式 ((a++)) echo $a

IChen.的博客 1万+

UBUNTU使用RTL8811CU网卡(包含树莓派)

下载驱动 从绿联中下载:链接 下载解压后,chmod Linux文件夹 sudo chmod -R 777 ./Linux/ 修改系统的BOOT Secure为disable,参考链接:链接 sudo apt install mokutil sudo mokutil --disable-validation 重启电脑后,按照提示选择change secure boot state,并输入对应的字母(并不是全部密码,而是第几个),选择disable即可 进入Linux文件夹,运行命令 ..

Hot_Ant的博客 6246

shell 变量加1的11种方法

#!/bin/bash count=0 while : do if [ $RANDOM != 32767 ] then #count=$((count+1)) #count=$[count+1] #count=$(expr $count + 1) #let "count+=1" #((count+=1))

qq_15742255的博客 7271

物联网组网技术优缺点对比:蓝牙、LoRa、wifi、NB-IoT、ZigBee等

1.前言 最近对物联网产品自组网技术选型,找到合适的组网技术,让产品自行组网并完成数据的传输。 2.参数对比

谁念西风独自凉 4万+

【Mode】微带传输线阻抗

微带线,英文名称为 (Microstrip) 是一种常见的平面传输线,主要用于传输微波频率信号(通常在射频和微波电路重中使用)。

u011699626的博客 243

shell脚本里的变量怎么加1?(变量加法)

#!/bin/sh #本脚本测试shell脚本中整型变量自增 加1的几种方法 #定义整型变量 a=1 echo $a #第一种整型变量自增方式 a=$(($a+1)) echo $a #第二种整型变量自增方式 a=$[$a+1] echo $a #第三种整型变量自增方式 a=`expr $a + 1` echo $a #第四种整型变量自增方式 let a++ echo $a #第五种整型变量自

Dontla的博客 6974

数据分片的三种方式:哈希、一致性哈希、按照数据范围分片

数据分片就是按照一定的规则,将数据集划分成相互独立、正交的数据子集,然后将数据子集分布到不同的节点上。通过设计合理的数据分片规则,可将系统中的数据分布在不同的物理数据库中,达到提升应用系统数据处理速度的目的。三种常用的数据分片方式:1. 哈希分片2. 一致性哈希分片(Consistent Hash)3. 按照数据范围分片(Range Based)数据分片的应用场景:1. 数据库扩展2. 分布式缓存对集群部署多个缓存节点,提高缓存的处理能力。

wjianwei666的专栏 1133

Linux中的一些常见变量:SHELL,PATH,PS1,BASHPID

PS1是一个强大的工具,可以帮助用户根据个人喜好自定义终端提示符的外观,从而提升工作效率和使用体验。SHELL变量在 Linux 环境中非常重要,因为它指定了用户的默认命令行解释器,这影响到命令的执行、脚本的运行和用户的工作流程。了解和正确配置SHELL变量可以帮助用户更高效地使用系统。PATH变量在 Linux 系统中至关重要,它决定了系统如何找到并执行命令。通过理解和正确配置PATH变量,用户可以更有效地管理和运行系统中的可执行文件。BASHPID。

眷怀的博客 1667

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

【Shell编程】1.Shell脚本、echo、Shell变量

【Shell编程】1.Shell脚本、echo、Shell变量。

因心,三人水的博客 933

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Shell编程之环境PS1变量解析、LANG语言变量

环境变量 PS1变量:命令提示符设置 [root@lx101 ~]# echo $PS1 [\u@\h \W]\$ 其中 \u:表示当前用户名 \h:表示简写主机名 \w:表示当前目录路径的最后一个目录 \ $ :提示符。如果是root提示符为“#”,如果是普通用户提示符为“$” 还有 \d:显示日期,格式为“星期月日” \H:显示完整的主机名。 \t:显示24小时制时间,格式为“HH:MM:...

老徐是个铁憨憨 621

Linux下SHELL的PS1变量简介

Linux环境变量中PS1是很重要的环境变量:   PS(Prompt Sign): 是指命令提示符,例如在Fedora 12的终端下:[liutao@liutao ~]$  ,在设定PS1环境变量时,我们需要用到预设的一些特殊符号来设定PS1,下面是鸟哥书上关于BASH的特殊变量。   o \d :代表日期,格式为 Weekday Month Date,例如 "Mon A

risingsun001的专栏 987

linux命令行ps1变量_Linux下SHELL的PS1变量简介

Linux下SHELL的PS1变量简介Linux环境变量中PS1是很重要的环境变量:PS(Prompt Sign): 是指命令提示符,例如在Fedora 12的终端下:[liutao@liutao ~]$ ,在设定PS1环境变量时,我们需要用到预设的一些特殊符号来设定PS1,下面是鸟哥书上关于BASH的特殊变量。o \d :代表日期,格式为 Weekday Month Date,例如 "Mon ...

weixin_35426022的博客 386

Shell 变量 $#,$@,$0,$1,$2 详解

$ + 数字 表示的就是一个命令的一个参数 linux中shell变量$#,$@,$0,$1,$2的含义解释: 变量说明: $$ Shell本身的PID(ProcessID) $! Shell最后运行的后台Process的PID $? 最后运行的命令的结束代码(返回值) $- 使用Set命令设定的Flag一览 $* 所有参数列表。如"$*"用「"」括起来的情况、以"$1 $...

MISAYAONE的博客 691

3.Shell位置变量和参数用法详解,位置参数变量作用,$,#,*,$1,$2等详解和例子

Shell位置变量和参数用法详解,位置参数变量作用,$,#,*,$1,$2等详解和例子 文章目录前言位置参数变量作用例子\$* \$@ \$# 示例\$*和\$@的区别总结 前言 位置变量:在bash shell中内置的变量, 在脚本代码中调用通过命令行传递给脚本的参数 位置参数变量作用 1,...对应第1个、第2个等参数,参数个数超过10个时,就要用大括号把这个数字括起来,例如,1, ... 对应第1个、第2个等参数,参数个数超过 10 个时,就要用大括号把这个数字括起来,例如,1,...对应第1个

Oracle/MySQL 到 国产信创数据库|迁移 · 调优 · 信创替换 4873

1·Shell编程变量

1)什么是变量?内存单元,其值可以改变 变量命名规则 1.开头为字符或下划线,名字中间中能有字母、数字和下划线组成; 2.变量的长度不超过255个字符; 3.变量名在有效的范围内必须是唯一的; //如再次定义则会替换上一个变量的值 4.在Bash中,变量的默认类型都是字符串型. //即系统把所有值都当作字符串放到变量中,不论这个“字符串”实际上是整数、浮点数等等

My 393

浅谈linux中shell变量$#,$@,$0,$1,$2的含义解释

linux中shell变量$#,$@,$0,$1,$2的含义解释: 变量说明: $$ Shell本身的PID(ProcessID) $! Shell最后运行的后台Process的PID $? 最后运行的命令的结束代码(返回值) $- 使用Set命令设定的Flag一览 $* 所有参数列表。如"$*"用「"」括起来的情况、以"$1 $2 … $n"的形式输出所有参数。 $@ 所有参数列表。如"...

zz460833359的博客 1002

bash ps1变量_定制Linux Shell命令主提示符,利用变量PS1

利用Shell中变量PS1定制Linux Shell命令提示符PS(Prompt Sign): 是指命令提示符。PS1:主提示符(PS2:辅提示符)默认情况下Terminal中的shell提示包括了用户名、主机名、当前目录(绝对路径)和提示符。即PS1显示[u@h W]$。解释:u 当前登录用户名,如上图rooth 当前计算机名称,如上图kingdomW 当前目录的basename,如~(家目录)...

weixin_39545805的博客 424

shell编程 Shell script 的默认变量($0, $1...)

Shell script 的默认变量($0, $1...) 我们知道指令可以带有选项与参数,例如 ls -la 可以察看包含隐藏文件的所有属性与权限。那么 shell script 能不能在脚本文件名后面带有参数呢?很有趣喔!举例来说,如果你想要重新启动系统登录文件的功能,可以这样做: [root@www ~]# file /etc/init.d/syslog /etc/init....

268

linux中shell变量$#,$@,$0,$1,$2的含义解释

转载自:http://hi.baidu.com/ipvsadm/item/489d9e16460195ddbe9042ee linux中shell变量$#,$@,$0,$1,$2的含义解释:变量说明:$$Shell本身的PID(ProcessID)$!Shell最后运行的后台Process的PID$?最后运行的命令的结束代码(返回值)$-使用Set命令设定的Flag一览$*...

pengdonglin137的专栏 154

shell变量$#,$@,$0,$1,$2,$HOME的含义解释

linux中shell变量$#,$@,$0,$1,$2,$HOME的含义解释: 变量说明: $HOME 查看用户家目录$$ Shell本身的PID(ProcessID) $! Shell最后运行的后台Process的PID $? 最后运行的命令的结束代码(返回值) $- 使用Set命令设定的Flag一览 $* 所有参数列表。如"$*"用「"」括起来的情况、以"$1 $2 … $n"的形式输出...

hqmln的博客 1436

【 shell 编程 】第1篇 变量

【 shell 编程 】第1篇 变量

guanguan12319的博客 535
上一篇: 认识bash 这个Shell
下一篇: Shell 替换+运算符
Tanswer_
博客等级 码龄11年 231粉丝 91原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值