zoukankan      html  css  js  c++  java
  • 特殊符号作用

    单引号:保留括起的所有字符的字面值。取消多个字符的特殊含义
    双引号:$、反引号(可替换成$())、反斜杠特殊含义保留下来,而其他特殊符号只保留字面值。取消多个字符的特殊含义
    作为转义字符,仅取消单个字符的特殊含义。

    案例:
    [root@classroom ~]# echo '`ls`'
    `ls`

    [root@classroom ~]# echo "`ls`"
    anaconda-ks.cfg
    bin
    classroom-rhce-post.log
    Desktop
    DHCP-ranges.txt
    Documents
    Downloads
    examrhce-0.0.1-1.el7.x86_64.rpm
    ldap
    Music
    Pictures
    Public
    selinux_modules
    Templates
    Videos


    命令中带有-e和不带-e的反斜杠参数
    [root@classroom ~]# b=n
    1、[root@classroom ~]# echo -e "\$b"

    ###双引号内,\变成了字符,而$b变成了n。结果字符串为 。而echo又识别转移字符 ,所以结果输出是回车。

    2、[root@classroom ~]# echo -e "\u"
    u
    ###双引号中的\转成了字符,双引号输出结果为u。由于u在linux系统里没有定义,所以只好输入u

    3、[root@classroom ~]# echo -e "\u"
    u
    ###双引号中的\转成字符,双引号输出结果为\u。由于-e参数识别了转义字符,使得\u转成了字符u,输入u

    4、[root@classroom ~]# echo -e "\$u"

    ###双引号中的\识别成,而$u识别成了n。双引号输出u。由于-e参数识别了转义字符,使得 变成了回车并输出。

    5、[root@classroom ~]# echo -e "\$u"
    $u
    ###双引号中\识别成字符,$识别成$,双引号中输入$u。由于-e参数虽然可以识别 等参数,由于man文件中echo识别不了$,只好输出$u。

    6、[root@classroom ~]# echo -e "\n$u"

    $u
    ###双引号中\识别成字符,$识别成$,双引号输出 $u。由于-e参数可以识别 ,所以输出回车+$u。



    倒引号:
    将倒引号中的内容或$()中的执行结果作为原命令的值。功能等同于$(),推荐使用$()而不是倒引号

    案例:
    [root@classroom ~]# echo "`ls`" > /root/test.txt
    ###不符合posix编程规范,不推荐使用
    [root@classroom ~]# cat /root/test.txt
    anaconda-ks.cfg
    bin
    classroom-rhce-post.log
    Desktop
    DHCP-ranges.txt
    Documents
    Downloads
    examrhce-0.0.1-1.el7.x86_64.rpm
    ldap
    Music
    Pictures
    Public
    selinux_modules
    Templates
    Videos

    [root@classroom ~]# echo "$(ls)" > /root/test.txt
    ###符合posix编程规范,强烈推荐使用
    [root@classroom ~]# cat /root/test.txt
    anaconda-ks.cfg
    bin
    classroom-rhce-post.log
    Desktop
    DHCP-ranges.txt
    Documents
    Downloads
    examrhce-0.0.1-1.el7.x86_64.rpm
    ldap
    Music
    Pictures
    Public
    selinux_modules
    Templates
    test.txt
    Videos
    [root@classroom ~]#

  • 相关阅读:
    CDN实现原理
    openstack测试集群扩容配置
    ELK5.2.2自动化部署脚本
    Python多线程
    Python反射
    OpenStack快照分析:(三)从磁盘启动云主机离线(在线)快照分析
    OpenStack快照分析:(二)从镜像启动的云主机离在线快照分析
    OpenStack快照分析:(一)从镜像启动的云主机离线快照分析
    Python元编程
    Python源码阅读:对象
  • 原文地址:https://www.cnblogs.com/yujiebin/p/10053120.html
Copyright © 2011-2022 走看看