• Linux


    1. 概述

      1. 参数
      2. 准备重构一版...
    2. 背景

      1. 复习一下 shell 脚本的参数获取
    3. 场景

      1. os
        1. centos7

    1. 参数: 基础

    1. 概述
      1. 简单描述 参数

    1. 获取参数

    1. 获取 第一个 参数

      1. 获取参数

        1. 使用 ${num} 获取参数
        2. ${1} 获取 第一个参数
      2. 代码

        #!/bin/bash
        var1=${1}
        echo ${var1}
        
      3. 其他

        1. 可以尝试 ${2}, ${3} 等获取后续参数
        2. 默认情况下, 如果参数不足, echo 不会报错, 其他命令, 需要验证

    2. 获取多个参数

    1. 问题1: 获取多个参数

      1. 一个一个获取参数, 如果参数多了, 会不会很麻烦
    2. 解决

      1. 可以一次获得 所有参数
    3. 方案1: $*

      1. $*

        1. 一次获取所有参数
      2. 代码

        #!/bin/bash
        var1=$*
        echo ${var1}
        
    4. 问题2: 分开取参数

      1. 所有参数

        1. $* 获取到的参数, 是所有参数排在一起的
      2. 需要

        1. 我想单独获得 某个参数
      3. 解决

        1. 思路1: 你知道要找 第几个 参数
          1. 使用 ${num}
        2. 思路2: 什么? 你不知道是第几个, 但是你就知道要 什么样的参数
          1. 转化为 数组
            1. 暂时不推荐
              1. 转化数组, 我还不会
              2. 转化后的数组, 不知道 元素下标的话, 需要循环, 数组的操作, 我还是不会
        3. 思路3: 使用 $@
    5. 方案2: $@

      1. 所有参数

        1. 多在 循环时 使用
      2. 代码

        #!/bin/bash
        for word in "$@"
        do
            echo ${word}
        done
        

    3. 获取最后一个参数

    1. 问题: 最后一个参数

      1. 最后一个
        1. 我就想获得 最后一个参数
    2. 解决

      #!/bin/bash
      
      # 假设参数是 1 2 3
      # 最后一个参数, ${3}
      var1=${#}
      echo $var1
      echo ${!var1}
      
      # 倒数 第二个参数, ${2}
      var2=$[${#}-1]
      echo $var2
      echo ${!var2}
      
    3. 问题: 手滑没加参数

      1. 问题

        1. 忽然手滑, 没有加参数
      2. 结果

        1. 第一段直接打印出了 脚本名

    4. 获取脚本名

    1. 脚本名

      1. ${0}
        1. 打印 ${0} 即可看到
    2. 问题

      1. ./<script>

        1. 显示 ./<script>
      2. bash <script>

        1. 显示 <script>
      3. source <script>

        1. 显示 -bash
          1. ????

    ps

    1. ref

      1. 学习 bash
      2. Shell 传递参数
      3. Linux获取最后一个参数(参数统计)
    2. 疑问

      1. 获取脚本名称如果这么不稳定, 那是否有 稳定的方法 呢?
    3. 后续尝试下 获取 选项

  • 相关阅读:
    MySQL_01 常用命令
    32_Go基础(TCP通信)
    oracle查询优化
    Eclipse中自动添加注释(作者,时间)
    java注解的学习
    JqueryeasyUIdatagrid参数之 queryParams
    Eclipse中,打开文件所在文件夹的插件,及设置
    更改Zend Studio/Eclipse代码风格主题
    JAVA中使用File类批量重命名文件及java.io.File的常见用法
    java面试笔试题大全
  • 原文地址:https://www.cnblogs.com/xy14/p/12088111.html
Copyright © 2020-2023  润新知