首页 > 系统相关 >linux服务器: Shell文件,注释,变量

linux服务器: Shell文件,注释,变量

时间:2025-01-13 18:32:39浏览次数:3  
标签:Shell 变量 变量值 linux 赋值 服务器 变量名 输入 定义

Shell文件

Shell 是一个用户跟操作系统之间的一个命令解释器

创建shell文件

编写内容

#!/bin/bash:这是一个 shebang 行,告诉系统这个脚本应该使用 bash shell 来执行。# 是一个注释字符,用于说明这行的作用。

echo 命令,用于在终端输出文本

执行脚本

1.给文件执行权限
2.执行
使用绝对路径执行 /bin/bash 是 Bash shell 的路径, /home/yss/ 是主目录, Helloworld.sh 是脚本的名称。 使用相对路径执行 已经在包含 Helloworld.sh 脚本的目录,可以直接使用脚本名称来执行它 单引号   : 把引号的内容当成整体来看待,禁止引用其他变量值, shell 中特殊符号都被视为普通字符

注释

只要在开始和结束处使用相同的标记即可 EOF   即End Of File

变量

变量是用来临时保存数据的,该数据是可以变化的数据
变量名定义规则
1.区分大小写 2.不能有特殊符号 3.给变量赋值时,有空格的字符串要用引号引起来(单引号或者双引号) 4. 不能以数字开头但可以包含数字 5. 等号两边不能有任何空格 6. 尽量做到见名知意   以上变量用法在 Shell 脚本中也同样适用
变量的截取
[yss@192 ~]$ a=123456789        定义变量
[yss@192 ~]$ echo ${a:2:3}      表示从第2位开始截取,截取3个字符        
345                             结果
$ 变量名 和 ${ 变量名 }  相同点:都可以调用变量 不同点: ${ 变量名 } 可以只截取变量的一部分,而 $ 变量名不可以

定义方式 :     

变量名=变量值 1.直接赋值                                 变量值是一个值,                 比如 a=1 2. 命令执行结果赋值给变量        变量值是 命令执行结果,      比如  a=`hostname`   3.交互式定义变量 (变量来源于用户输入或文件内容) 4.定义有类型的变量 (declare)
交互式定义变量
第一种:用户输入赋值

read 命令用于从标准输入(通常是键盘)读取一行文本,并将其值赋给变量。

上面的截图中, read 命令用于读取用户输入的文本(tom),并将其存储在变量 name 

-s 参数不显示的含义是,用户在输入时无法看见输入的内容 上图: 当输入的字符串长度超过定义的长度,自动跳转至[yss@192 ~]$ 定义超时时间的示例
第二种:文件内容赋值

read a < 1.txt:这个命令从1.txt文件中读取内容,并将其存储在变量a中。

这里的 符号表示将文件内容作为输入重定向到read命令。

注: 无论文件有多少内容,默认只取第一行内容作为变量值。
定义有类型的变量 declare
目的:给变量做一些限制,固定变量的类型,比如:整型、只读 用法: declare 选项 变量名 = 变量值 只读变量不能修改或再次赋值

变量长度

格式   ${# 变量名 }           #计算变量的字符长度

替换变量的值

格式:   ${ 变量 /old/new}    将变量中第一次出现的 old 值替换成 new 值 示例:

系统变量

标签:Shell,变量,变量值,linux,赋值,服务器,变量名,输入,定义
From: https://blog.csdn.net/weixin_40121264/article/details/145051046

相关文章

  • JavaScript与服务器端框架Flask
    JavaScript与服务器端框架Flask基本概念和作用说明示例一:设置基本的Flask环境示例二:使用JavaScript发起请求功能使用思路及代码示例示例三:处理POST请求示例四:表单验证与反馈开发经验分享在现代Web开发中,前端和后端的紧密结合对于创建高效、响应迅速的应用程序至关......
  • 嵌入式Linux SPI子系统驱动 通信协议原理 硬件 时序 深度剖析
    SPI(SerialPeripheralInterface,串行外设接口)是一种同步的串行通信协议,通常用于微控制器和外部设备(如传感器、存储器、显示屏等)之间的高速数据传输。SPI协议由主设备(Master)和从设备(Slave)组成,主设备发起通信并控制时序,而从设备根据主设备的指令进行响应。SPI使用4根信号线进行......
  • websocket-sharp:.NET平台上的WebSocket客户端与服务器开源库
    推荐一个C#开发的,实现WebSocket功能的开源项目。01项目简介websocket-sharp提供WebSocket客户端和服务器库,基于C#开发的,并遵循WebSocket协议规范,使得开发人员能够轻松地在.NET应用程序中实现WebSocket通信。websocket-sharp特色功能有:1、简洁易用的API:提供清晰且......
  • 【Linux】Linux常见指令(下)
    个人主页~Linux常见命令(上)~初识Linux一、Linux基本命令11、cat命令12、more指令13、less指令14、head指令15、tail指令16、时间相关的指令(1)date指令(2)cal指令17、find指令18、grep指令19、压缩相关指令(1)zip、unzip指令(2)tar指令20、bc指令一、Linux基本命令i=1......
  • linux常用命令(2)[常用快捷键, clear, date, ping, ps, kill, man, help, info ]
    常用快捷键清空命令行界面  clear示例显示时间 datedate和date-R命令的区别如下"CST"表示"ChinaStandardTime",即中国标准时间中国标准时间是协调世界时(UTC)的东八区时间,也就是UTC+8:00网络测试命令  ping用于测试主机之间网络的连通性上面的截图......
  • oracle12.2.0.1交互快速部署脚本(shell)
    背景有些项目会用到oracle,以前大佬写的脚本不好用,拿来改一改,能用起来先,回头再适配更高版本的oracle。如果使用过程中有什么问题,还请批评指正。脚本#!/bin/bash####################Steup1Installoraclesoftware#####################script_name:oracle12.2.0.1_inst......
  • windows消息循环和linux消息循环的异同
     一、消息循环的基本概念消息循环(MessageLoop)是一种编程结构,用于等待和分派消息。在不同的系统或机制下,消息循环有不同的称呼,如事件循环(EventLoop)或运行循环(RunLoop)。它是经典的消息驱动机制的基础‌。 二、相同点事件驱动机制的核心地位在Linux和Windows中......
  • Powershell-2学习笔记
    声明!学习视频来自B站up主**泷羽sec**有兴趣的师傅可以关注一下,如涉及侵权马上删除文章,笔记只是方便各位师傅的学习和探讨,文章所提到的网站以及内容,只做学习交流,其他均与本人以及泷羽sec团队无关,切勿触碰法律底线,否则后果自负!!!!有兴趣的小伙伴可以点击下面连接进入b站主页[B站......
  • Xshell 远程连接软件
    哈喽啊亲们!今天也是快乐牛马的一天,小橘已经连续加班两天了,深刻体会到了这年头牛马的含义。言归正传,今天跟大家聊聊Xshell这个工具吧。xshell远程连接必备信息IP地址 端口号 用户名 密码 IP地址●IP地址是服务器的身份证号,在局域网内唯一;●公网IP:公网又......
  • Linux电源管理——Suspend-to-Idle(s2idle) 流程
    目录一、常见的Suspend方式1、Suspend-to-idle2、Standby 3、Suspend-to-RAM4、Hibernation 二、代码分析1、state_store2、suspend_enter3、s2idle_loop4、idleloop5、psci_enter_idle_state6、cpu_suspend7、开始resume流程8、开启IRQ中断9、pm_syst......