您的位置:首页 > 娱乐 > 八卦 > 深圳市住建局官网查询_代理ip免费软件_免费h5制作网站_软文推广营销平台

深圳市住建局官网查询_代理ip免费软件_免费h5制作网站_软文推广营销平台

2024/12/26 19:11:04 来源:https://blog.csdn.net/aokaomo/article/details/143807339  浏览:    关键词:深圳市住建局官网查询_代理ip免费软件_免费h5制作网站_软文推广营销平台
深圳市住建局官网查询_代理ip免费软件_免费h5制作网站_软文推广营销平台

声明:学习视频来自b站up主 泷羽sec,如涉及侵权马上删除文章

感谢泷羽sec 团队的教学
视频地址:shell脚本(1)脚本创建执行与变量使用_哔哩哔哩_bilibili

本文主要讲解shell脚本的创建、执行和变量的使用。

一、脚本执行

1. 创建和运行脚本的基本方法
  1. 创建脚本文件:

    touch 1.sh 

  2. 编辑脚本内容:

    vim 1.sh
    #!/bin/bash echo "hello world"
    • 解释器声明:
      • #!/bin/bash、#!/bin/dash、#!/bin/sh 都是用来指定脚本的解释器。
      • ls -l /bin/sh 通常会发现 /bin/sh 链接到 dash,所以即使用 sh,多数情况仍是调用 dash。

  1. 赋予执行权限并运行脚本:

    chmod 777 1.sh 
    ./1.sh

2. 使用解释器直接执行脚本
  • 无需赋予执行权限,可以用解释器直接运行:
    sh 1.sh 
    bash 1.sh 
    dash 1.sh
    注意:需指定脚本路径或在当前目录下执行。如 /root/1.sh

3. 使用 source 命令执行脚本
  • source 命令在当前 shell 中执行脚本,不会启动子进程:
    source 1.sh

  • 特点:
    • 对脚本中的变量定义和修改会直接影响当前 shell 环境。
    • 在一些终端工具中,source 命令的提示颜色会加深以标注。

二、变量的使用

1. 声明和定义变量
  • 变量名规则:
    • 由字母、数字、下划线组成,不能以数字开头。
    • 避免在变量名中使用空格。
  • 示例:
    name='GGB' 
    age=18

2. 使用变量
  • 打印变量:
    echo my name is $name, my age is $age years old
    echo "my name is $name, my age is $age years old"加不加引号,打印结果都一样

  • 加引号和不加引号的区别:
    • 双引号:
      echo "my name is $name, my age is $age years old"

      效果: 变量会被替换为实际值。
    • 单引号:
      ​echo 'my name is $name, my age is $age years old'

      效果: 会直接输出 $name 和 $age,不解析变量。
3. 变量拼接
  • 直接拼接:
    echo "my name is $name,my age is $ageyears old"

    问题: $ageyears 被视为一个整体变量名,因为变量ageyears没有被定义,因此打印为空。
  • 使用花括号:
    echo "my name is $name,my age is ${age}years old"

    效果: 正确拼接,输出 my name is GGB, my age is 18years old。
  • 加双引号:
    echo "my name is "$name", my age is "$age" years old"

    效果: 与花括号效果相同。
4. 查看定义的变量
  • 查看当前 shell 的所有变量:
    set

  • 查看特定变量:
    set | grep name

5. 删除变量
  • 使用 unset 删除变量:
    unset ggb

    删除后变量值为空。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com