当前位置: 首页 > wzjs >正文

济南网站建设cnwenhui宝塔面板做织梦网站

济南网站建设cnwenhui,宝塔面板做织梦网站,买完域名后如何建设网站,企业邮箱是多少怎么查文章目录🧐初识Shell什么是Shell为什么要学习Shell🤔Shell脚本的编写要求和执行方式👏脚本格式要求脚本的常见执行方式第一个Shell脚本🥝Shell变量系统变量set命令🍋‍🟩用户变量🍋‍&#x1f7…

在这里插入图片描述

文章目录

  • 🧐初识Shell
    • 什么是Shell
    • 为什么要学习Shell🤔
    • Shell脚本的编写要求和执行方式👏
      • 脚本格式要求
    • 脚本的常见执行方式
    • 第一个Shell脚本
  • 🥝Shell变量
    • 系统变量+set命令🍋‍🟩
    • 用户变量🍋‍🟩
      • 定义用户变量
    • 变量的引用🍋‍🟩
      • 简单引用
      • 花括号引用
      • 命令替换
    • 特殊字符处理🍋‍🟩
    • 栗子🌰
      • 案例1:定义变量A
      • 案例3:声明静态的变量B=2,不能unset
      • 案例4:将指令返回的结果赋给变量
    • 变量定义规则🧾

🧐初识Shell

什么是Shell

Shell 是一个命令行解释器,它为用户提供了一个向 Linux 内核发送请求以便运行程序的界面系统级程序,用户可以用 Shell 来启动、挂起、停止甚至是编写一些程序。下面我们用一幅图来解释什么是
shell。
在这里插入图片描述

为什么要学习Shell🤔

  • Linux运维工程师在进行服务器集群管理时,需要编写Shell程序来进行服务器管理
  • 对于 JavaEE 和 Python 程序员来说,由于工作的需要,可能会要求你编写一些 Shell脚本来执行程序或者是完成对服务器的维护,比如编写一个定时备份数据库的脚本
  • 对于大数据程序员来说,需要编写 Shell程序来管理集群
  • Shell脚本的编写要求和执行方式👏

    脚本格式要求

  • 脚本以 #!/bin/bash 开头
  • 脚本具有可执行权限
  • 脚本的常见执行方式

  • 给要执行的脚本文件,添加可执行权限
  • 直接用 sh脚本文件名 命令执行,不用赋予脚本可执行权限
  • 第一个Shell脚本

    [root@hygge ~] pwd
    /root
    [root@hygge ~] mkdir shellCode # 在root目录下面创建一个文件夹shellCode
    [root@hygge ~] cd shellCode/
    [root@hygge shellCode] ll
    total 0
    [root@hygge shellCode] vim hello.sh #创建一个脚本文件
    

    在这里插入图片描述
    保存并退出。
    此时我们发现脚本是没有执行权限的

    [root@hygge shellCode] ll
    总用量 4
    -rw-r--r--. 1 root root 31 716 11:40 hello.sh   当前脚本没有可执行权限
    [root@hygge shellCode] ./hello.sh  					执行脚本
    -bash: ./hello.sh 									权限不够 
    

    测试解决方案有两种:一种是修改脚本的可执行权限,第二种就是使用sh + 脚本文件名的方式执行脚本
    第一步:

    [root@hygge shellCode] chmod u+x  hello.sh   给当前hello.sh赋予可执行权限
    [root@hygge shellCode] ll
    总用量 4
    -rwxr--r--. 1 root root 31 716 11:40 hello.sh   当前脚本具备可执行权限
    [root@hygge shellCode] ./hello.sh					可以使用相对路径的方式执行shell脚本
    Hello world
    [root@hygge shellCode] /root/shellCode/hello.sh		也可以使用绝对路径的方式执行shell脚本
    Hello world
    

    第二种:
    我们先恢复脚本不可执行的权限

    [root@hygge shellCode] chmod u-x hello.sh    让hello.sh脚本不具备可执行的权限
    [root@hygge shellCode] ll
    total 4
    -rw-r--r--. 1 root root 31 Sep 5 20:51 hello.sh
    [root@hygge shellCode] sh hello.sh   		 执行脚本
    Hello world
    

    🥝Shell变量

    系统变量+set命令🍋‍🟩

    Linux中Shell的变量分为 系统变量 和 用户自定义变量。系统变量:$HOME 、 $PWD、 $SHELL、 $USER 等等。
    我们可以使用set命令显示当前 Shell 中所有变量

    查询指定的系统变量:

    [root@hygge shellCode] echo $HOME
    /root
    [root@hygge shellCode] echo $PWD
    /root/shellCode
    [root@hygge shellCode] echo $SHELL
    /bin/bash
    [root@hygge shellCode] echo $USER
    root
    

    查询所有的系统变量:

    [root@hygge shellCode] set | more
    

    用户变量🍋‍🟩

    定义用户变量

    我们在开发中,绝大多数使用的是用户自定义的变量。呢么自定义变量该如何定义呢?

  • 定义变量:变量=值 【注意:等号两侧没有空格
  • 撤销变量:unset 变量
  • 声明静态变量:readonly 变量 【注意:该变量不能 unset 销毁
  • 变量的引用🍋‍🟩

    在 Shell 脚本中,要使用变量的值,需要在变量名前加上$符号。常见的引用方式有以下几种:

    简单引用

    直接在变量名前加$,如echo $name,这种方式最为常用

    name="Bob"
    echo $name    输出:Bob
    

    花括号引用

    使用场景:当变量名和其他字符连接在一起时,可能导致解析错误,此时需要使用花括号将变量名括起来明确变量边界

    fruit="apple"
    echo "I like ${fruit}s"  输出:I like apples
    

    如果不使用花括号,写成echo “I like $fruits”,Shell 会尝试查找名为fruits的变量,而不是我们期望的fruit变量

    命令替换

    可以将命令的执行结果赋值给变量,使用反引号`或者$( )

    current_date=`date +%Y-%m-%d`   	使用反引号
    echo $current_datecurrent_time=$(date +%H:%M:%S)   	使用$( )
    echo $current_time
    

    $( )形式相对更常用,因为它更具可读性,并且在嵌套命令替换时更方便

    特殊字符处理🍋‍🟩

    当变量的值包含空格、特殊字符等时,需要使用引号进行处理。

  • 双引号:双引号内的变量会被解析,特殊字符除了$、反斜杠\ 、反引号`外,其他都会保留原意
  • name="Alice"
    message="Hello, $name!"
    echo $message     输出:Hello, Alice!
    
  • 单引号:单引号内的所有字符都会原样输出,变量不会被解析
  • message='Hello, $name!'
    echo $message    输出:Hello, $name!
    
  • 反斜杠:反斜杠用于转义单个字符,使其失去特殊含义
  • path=/home/user\ documents
    echo $path    输出:/home/user documents
    

    这里没有 反斜杠\ 的话会报错的,因为documents前面有一个空格,属于特殊字符,要用双引号括起来

    栗子🌰

    案例1:定义变量A

    [root@hygge shellCode] vim vr.sh
    

    在这里插入图片描述
    结果:

    [root@hygge shellCode] chmod u+x vr.sh   设置脚本权限
    [root@hygge shellCode] ./vr.sh           执行脚本
    100
    

    还可以这么输出:
    在这里插入图片描述
    结果:

    [root@hygge shellCode] ./vr.sh
    100
    A=100
    A=100
    A=     这里是因为变量A被销毁了,所以值不存在了
    

    案例3:声明静态的变量B=2,不能unset

    在这里插入图片描述
    结果:

    [root@hygge shellCode]# ./vr.sh
    100
    A=100
    A=100
    A=
    B=2
    ./vr.sh: 第 20 行:unset: B: 无法反设定: 只读 variable   # 报错,无法销毁静态变量
    

    案例4:将指令返回的结果赋给变量

    在这里插入图片描述

    结果是:

    [root@hygge shellCode]# ./vr.sh
    100
    A=100
    A=100
    A=
    B=2
    ./vr.sh: 第 20 行:unset: B: 无法反设定: 只读 variable
    2025-07-16---12:05:58
    2025-07-16---12:05:58
    

    在上面的shell脚本里面,我们的变量都是大写,那么在shell编程里面,变量定义的规则是什么呢?

    变量定义规则🧾

  • 变量名称可以由字母、数字和下划线组成,但是不能以数字开头
  • 等号两侧不能有空格
  • 变量名称一般习惯为大写,这是一个规范,大家遵守即可

  • 如果我的内容对你有帮助,请 点赞 评论 收藏 。创作不易,大家的支持就是我坚持下去的动力!
    在这里插入图片描述


文章转载自:

http://px545B4H.Lcxdm.cn
http://VefVOuh5.Lcxdm.cn
http://z6jxtL1e.Lcxdm.cn
http://uFhW8IB5.Lcxdm.cn
http://Tj2bnnGJ.Lcxdm.cn
http://Cf39DOlr.Lcxdm.cn
http://G1nBkcDG.Lcxdm.cn
http://o37UWCbE.Lcxdm.cn
http://Xq9f6Tqk.Lcxdm.cn
http://G3FH4TUD.Lcxdm.cn
http://O9jD5CrU.Lcxdm.cn
http://Mg1LQBzE.Lcxdm.cn
http://vXbfE4DE.Lcxdm.cn
http://8uNZNzWN.Lcxdm.cn
http://sfypUEOS.Lcxdm.cn
http://5cZgCPK5.Lcxdm.cn
http://q6y46WT4.Lcxdm.cn
http://1GDd3h4d.Lcxdm.cn
http://nIzLetoj.Lcxdm.cn
http://IfsGAp8I.Lcxdm.cn
http://yiwrA4WH.Lcxdm.cn
http://wc7M59X8.Lcxdm.cn
http://SJUu6YKO.Lcxdm.cn
http://J7QPQA4y.Lcxdm.cn
http://nbGXbbpY.Lcxdm.cn
http://E49NUloS.Lcxdm.cn
http://ny22cOxs.Lcxdm.cn
http://J6PzNufB.Lcxdm.cn
http://PIqg8wI0.Lcxdm.cn
http://BO95lor3.Lcxdm.cn
http://www.dtcms.com/wzjs/639084.html

相关文章:

  • 高并发网站建设大连网站建设大全
  • 腾讯云 建网站joomla与wordpress哪个好
  • 制作网站代码h5网站制作案例分析
  • 网站搭建合同范本加盟网站建设服务
  • 这是我自己做的网站工程建设公司官网
  • 做机械设备哪个网站好服务器怎么发布网站
  • 北京企业网站开发费用网上开店如何推广自己的网店
  • 做网站什么空间比较好成都住建局官网报名入口网址
  • 网站建设属于什么科目珠海做网站优化
  • 大连建设安全网站只建设电子商务网站不维护
  • 鹤壁建设企业网站公司深入网站开发和运维
  • 重庆网站建设夹夹虫公司.很好广州市市场监督管理局
  • 有哪些网站是静态网站网站虚拟主机销售
  • 个人网站asp源码上海小程序定制公司
  • 网站模块源码成都网站公司
  • 内蒙古住房与城乡建设部网站wordpress页面连接
  • 茶叶外贸网站建设wordpress2017备案号
  • 如何创建旅游网站广东东莞免费网站制作公司
  • 哪些网站可以做任务挣钱网站自然优化
  • html5手机网站织梦模板怎么做移动端网站计算像素
  • 如何使用模板网站建设网页鹏牛网做网站怎么样
  • 做淘宝客要建网站吗网站服务设计
  • 织梦音乐网站程序淘宝网页设计图片
  • 网站开发中期检查苏州园区人才市场
  • 网站展示重点广州建立公司网站多少钱
  • 怎么免费给自己建网站网站后台被百度蜘蛛抓取
  • 自己做图片网站php做的购物网站系统下载
  • 乡村旅游网站建设的意义开封府景点网站及移动端建设情况
  • 收费报名网站怎么做工作总结个人
  • 建设电子商务网站需要什么设备网站建设需要会什么软件有哪些方面