zoukankan      html  css  js  c++  java
  • Bash 中 "" 和 `` 嵌套的问题

    如何理解以下两句 Bash 脚本?执行结果都是一样的,输出了 date 命令输出中的第二个域,为三月份

    echo "`date | awk '{print $2}'`"
    Mar
    
    echo "`date | awk '{print $2}'`"
    Mar

    对于以下脚本,在 " " 中保留了 ` ` 和 $ 的特殊含义,下面脚本中取消了 $ 元字符特殊含义,bash 在实行时不做变量替换, awk 识别到的仅仅是 {print $2},awk在执行时才执行变量替换命令

    echo "`date | awk '{print $2}'`"

    对于以下脚本,未取消 $ 的特殊含义,bash程序在执行过程中做变量替换,相当于 awk 直接获得到了 {print "Mar"}

    echo "`date | awk '{print $2}'`"

    以上两个脚本仅仅是变量替换时间不同而已,所以结果一样。

    种一棵树最好的时间是十年前,其次是现在。
  • 相关阅读:
    CentOS7- 配置阿里镜像源
    MySQL学习笔记
    OSI&TCP/IP模型
    加密算法学习
    golang学习笔记
    Redis学习总结整理
    TCP
    HTTP/HTTPS
    HTTP2
    MVCC
  • 原文地址:https://www.cnblogs.com/HyattXia/p/12533162.html
Copyright © 2011-2022 走看看