zoukankan      html  css  js  c++  java
  • Linux

    双引号

    如果把文本放在双引号中,那么 shell 使用的所有特殊字符都将失去它们的特殊含义,而被看成普通字符。字符 "$"(美元符号)、""(反斜杠)、"`"(反引号) 除外。这就意味着单词分隔、路径名扩展、波浪线扩展和花括号扩展都将失效,但是参数扩展、算术扩展和命令替换仍然生效。

    实例

    a) 抑制单词分隔。

    [huey@huey-K42JE cmdline]$ touch test file
    [huey@huey-K42JE cmdline]$ touch "test file"
    [huey@huey-K42JE cmdline]$ ll
    total 0
    -rw-rw-r-- 1 ucm ucm 0 Oct  3 10:50 file
    -rw-rw-r-- 1 ucm ucm 0 Oct  3 10:50 test
    -rw-rw-r-- 1 ucm ucm 0 Oct  3 10:50 test file

    b) 抑制路径名扩展。

    [huey@huey-K42JE cmdline]$ ls D*
    Desktop  Documents
    [huey@huey-K42JE cmdline]$ ls "D*"
    ls: cannot access D*: No such file or directory

    c) 抑制波浪线扩展。

    [huey@huey-K42JE ~]$ echo ~
    /home/ucm
    [huey@huey-K42JE ~]$ echo "~"
    ~

    d) 抑制花括号扩展。

    [ucm@i-5-660-VM cmdline]$ echo {Z..A}
    Z Y X W V U T S R Q P O N M L K J I H G F E D C B A
    [ucm@i-5-660-VM cmdline]$ echo "{Z..A}"
    {Z..A}

    单引号

    如果希望抑制所有的扩展,那么应该使用单引号。

    实例

    a) 抑制美元符号 ($) 的扩展。

    [huey@huey-K42JE cmdline]$ echo $LANG
    en_US.UTF-8
    [huey@huey-K42JE cmdline]$ echo "$LANG"
    en_US.UTF-8
    [huey@huey-K42JE cmdline]$ echo '$LANG'
    $LANG

    c) 抑制反引号 (`) 的扩展。

    [huey@huey-K42JE cmdline]$ echo `cal`
    October 2015 Su Mo Tu We Th Fr Sa 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
    [huey@huey-K42JE cmdline]$ echo "`cal`"
        October 2015    
    Su Mo Tu We Th Fr Sa
                 1  2  3
     4  5  6  7  8  9 10
    11 12 13 14 15 16 17
    18 19 20 21 22 23 24
    25 26 27 28 29 30 31
    [huey@huey-K42JE cmdline]$ echo '`cal`'
    `cal`
  • 相关阅读:
    bzoj3272 Zgg吃东西
    bzoj3894 文理分科
    poj1149 PIGS
    poj1637 Sightseeing tour
    [Wc2007]剪刀石头布
    poj2396 Budget
    [NOI2017]游戏
    CF666E Forensic Examination
    bzoj4889 [Tjoi2017]不勤劳的图书管理员
    CF587F Duff is Mad
  • 原文地址:https://www.cnblogs.com/huey/p/4853159.html
Copyright © 2011-2022 走看看