莪和妳 發表於 2023-6-13 00:00:00

linux特殊字符及其作用大全

<p>
        <span><strong>1.通配符</strong></span></p>
<p>
        ? 匹配单个字符</p>
<p>
        * 代表所有字符</p>
<p>
        匹配[]里任意一个字符。4选1 </p>
<p>
        [!abcd]  匹配不含[]里任意一个字符的字符。[^abcd]</p>
<p>
        <span><strong>2.路径相关</strong></span></p>
<p>
        ~     用户的家目录,超级用户为/root,普通用户为/home</p>
<p>
        -      代表上一次(相对于当前路径)用户所在的路径 $OLDPWD控制</p>
<p>
        .      代表当前目录(点号还有很多其它含义,暂且不表)</p>
<p>
        ..     代表上一级目录</p>
<p>
        <span><strong>3.引号</strong></span></p>
<p>
        ''     单引号 引号里面是啥,就一直是啥不会改变,输出和处理,都是所见即所得。</p>
<p>
        “”    双引号 解析引号里的命令和变量,然后,输出和处理</p>
<p>
        ``    反引号 引命令的 等价$()</p>
<p>
        注:没有特殊需求,就用双引号引用字符串,纯数字可以不用引号。</p>
<p>
        <span><strong>4.其他</strong></span></p>
<p>
        ;     命令结束符或者分隔符。</p>
<p>
        #    注释,给人看的。机器忽略,root提示符。</p>
<p>
        |     管道 把一个命令的标准输出作为标准输入传给另一个命令!</p>
<p>
        $    美元 普通用户提示符,放在变量前面,代表变量内容</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_631549">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                        <div class="line number2 index1 alt1">
                                                                2</div>
                                                        <div class="line number3 index2 alt2">
                                                                3</div>
                                                        <div class="line number4 index3 alt1">
                                                                4</div>
                                                        <div class="line number5 index4 alt2">
                                                                5</div>
                                                        <div class="line number6 index5 alt1">
                                                                6</div>
                                                        <div class="line number7 index6 alt2">
                                                                7</div>
                                                        <div class="line number8 index7 alt1">
                                                                8</div>
                                                        <div class="line number9 index8 alt2">
                                                                9</div>
                                                        <div class="line number10 index9 alt1">
                                                                10</div>
                                                        <div class="line number11 index10 alt2">
                                                                11</div>
                                                        <div class="line number12 index11 alt1">
                                                                12</div>
                                                        <div class="line number13 index12 alt2">
                                                                13</div>
                                                        <div class="line number14 index13 alt1">
                                                                14</div>
                                                        <div class="line number15 index14 alt2">
                                                                15</div>
                                                        <div class="line number16 index15 alt1">
                                                                16</div>
                                                        <div class="line number17 index16 alt2">
                                                                17</div>
                                                        <div class="line number18 index17 alt1">
                                                                18</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash plain"></code><code class="bash comments"># echo $PS1</code>
</div>
                                                                <div class="line number2 index1 alt1">
                                                                        <code class="bash plain">[\u@\h \W]\$</code>
</div>
                                                                <div class="line number3 index2 alt2">
                                                                        <code class="bash plain"></code><code class="bash comments"># echo PS1</code>
</div>
                                                                <div class="line number4 index3 alt1">
                                                                        <code class="bash plain">PS1</code>
</div>
                                                                <div class="line number5 index4 alt2">
                                                                        <code class="bash plain"></code><code class="bash comments"># echo $PS1</code>
</div>
                                                                <div class="line number6 index5 alt1">
                                                                        <code class="bash plain">[\u@\h \W]\$</code>
</div>
                                                                <div class="line number7 index6 alt2">
                                                                        <code class="bash plain"></code><code class="bash comments"># echo $PATH</code>
</div>
                                                                <div class="line number8 index7 alt1">
                                                                        <code class="bash plain">/usr/local/sbin</code><code class="bash plain">:</code><code class="bash plain">/usr/local/bin</code><code class="bash plain">:</code><code class="bash plain">/sbin</code><code class="bash plain">:</code><code class="bash plain">/bin</code><code class="bash plain">:</code><code class="bash plain">/usr/sbin</code><code class="bash plain">:</code><code class="bash plain">/usr/bin</code><code class="bash plain">:</code><code class="bash plain">/root/bin</code>
</div>
                                                                <div class="line number9 index8 alt2">
                                                                        <code class="bash plain"></code><code class="bash comments"># echo $OLDPWD</code>
</div>
                                                                <div class="line number10 index9 alt1">
                                                                        <code class="bash plain">/root/test</code>
</div>
                                                                <div class="line number11 index10 alt2">
                                                                        <code class="bash plain">\*  让有意义的字符还原成为它本身的意义</code>
</div>
                                                                <div class="line number12 index11 alt1">
                                                                        <code class="bash plain">{}  序列 {1..10} {a..z} {a,c,m}  </code><code class="bash functions">seq</code>
</div>
                                                                <div class="line number13 index12 alt2">
                                                                        <code class="bash functions">touch</code> <code class="bash plain">{1..10}.txt</code>
</div>
                                                                <div class="line number14 index13 alt1">
                                                                        <code class="bash plain"></code><code class="bash comments"># cp /etc/ssh/sshd_config{,.ori}</code>
</div>
                                                                <div class="line number15 index14 alt2">
                                                                        <code class="bash plain"></code><code class="bash comments"># ls /etc/ssh/sshd_config{,.ori}</code>
</div>
                                                                <div class="line number16 index15 alt1">
                                                                        <code class="bash plain">/etc/ssh/sshd_config</code> <code class="bash plain">/etc/ssh/sshd_config</code><code class="bash plain">.ori</code>
</div>
                                                                <div class="line number17 index16 alt2">
                                                                        <code class="bash plain"></code><code class="bash comments"># cp /etc/ssh/sshd_config /etc/ssh/sshd_config.ori</code>
</div>
                                                                <div class="line number18 index17 alt1">
                                                                        <code class="bash plain">&amp;  将程序放入后台运行符,例如:</code><code class="bash plain">/bin/sh</code> <code class="bash plain">/scripts/chuanwen</code><code class="bash plain">.sh &amp;</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
        <div class="codetool" id="codetool">
                <div class="code_n">
                        <textarea></textarea>
</div>
        </div>
</div>
<p>
        <span><strong>补充:下面看下linux 特殊字符用法</strong></span></p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_854259">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                        <div class="line number2 index1 alt1">
                                                                2</div>
                                                        <div class="line number3 index2 alt2">
                                                                3</div>
                                                        <div class="line number4 index3 alt1">
                                                                4</div>
                                                        <div class="line number5 index4 alt2">
                                                                5</div>
                                                        <div class="line number6 index5 alt1">
                                                                6</div>
                                                        <div class="line number7 index6 alt2">
                                                                7</div>
                                                        <div class="line number8 index7 alt1">
                                                                8</div>
                                                        <div class="line number9 index8 alt2">
                                                                9</div>
                                                        <div class="line number10 index9 alt1">
                                                                10</div>
                                                        <div class="line number11 index10 alt2">
                                                                11</div>
                                                        <div class="line number12 index11 alt1">
                                                                12</div>
                                                        <div class="line number13 index12 alt2">
                                                                13</div>
                                                        <div class="line number14 index13 alt1">
                                                                14</div>
                                                        <div class="line number15 index14 alt2">
                                                                15</div>
                                                        <div class="line number16 index15 alt1">
                                                                16</div>
                                                        <div class="line number17 index16 alt2">
                                                                17</div>
                                                        <div class="line number18 index17 alt1">
                                                                18</div>
                                                        <div class="line number19 index18 alt2">
                                                                19</div>
                                                        <div class="line number20 index19 alt1">
                                                                20</div>
                                                        <div class="line number21 index20 alt2">
                                                                21</div>
                                                        <div class="line number22 index21 alt1">
                                                                22</div>
                                                        <div class="line number23 index22 alt2">
                                                                23</div>
                                                        <div class="line number24 index23 alt1">
                                                                24</div>
                                                        <div class="line number25 index24 alt2">
                                                                25</div>
                                                        <div class="line number26 index25 alt1">
                                                                26</div>
                                                        <div class="line number27 index26 alt2">
                                                                27</div>
                                                        <div class="line number28 index27 alt1">
                                                                28</div>
                                                        <div class="line number29 index28 alt2">
                                                                29</div>
                                                        <div class="line number30 index29 alt1">
                                                                30</div>
                                                        <div class="line number31 index30 alt2">
                                                                31</div>
                                                        <div class="line number32 index31 alt1">
                                                                32</div>
                                                        <div class="line number33 index32 alt2">
                                                                33</div>
                                                        <div class="line number34 index33 alt1">
                                                                34</div>
                                                        <div class="line number35 index34 alt2">
                                                                35</div>
                                                        <div class="line number36 index35 alt1">
                                                                36</div>
                                                        <div class="line number37 index36 alt2">
                                                                37</div>
                                                        <div class="line number38 index37 alt1">
                                                                38</div>
                                                        <div class="line number39 index38 alt2">
                                                                39</div>
                                                        <div class="line number40 index39 alt1">
                                                                40</div>
                                                        <div class="line number41 index40 alt2">
                                                                41</div>
                                                        <div class="line number42 index41 alt1">
                                                                42</div>
                                                        <div class="line number43 index42 alt2">
                                                                43</div>
                                                        <div class="line number44 index43 alt1">
                                                                44</div>
                                                        <div class="line number45 index44 alt2">
                                                                45</div>
                                                        <div class="line number46 index45 alt1">
                                                                46</div>
                                                        <div class="line number47 index46 alt2">
                                                                47</div>
                                                        <div class="line number48 index47 alt1">
                                                                48</div>
                                                        <div class="line number49 index48 alt2">
                                                                49</div>
                                                        <div class="line number50 index49 alt1">
                                                                50</div>
                                                        <div class="line number51 index50 alt2">
                                                                51</div>
                                                        <div class="line number52 index51 alt1">
                                                                52</div>
                                                        <div class="line number53 index52 alt2">
                                                                53</div>
                                                        <div class="line number54 index53 alt1">
                                                                54</div>
                                                        <div class="line number55 index54 alt2">
                                                                55</div>
                                                        <div class="line number56 index55 alt1">
                                                                56</div>
                                                        <div class="line number57 index56 alt2">
                                                                57</div>
                                                        <div class="line number58 index57 alt1">
                                                                58</div>
                                                        <div class="line number59 index58 alt2">
                                                                59</div>
                                                        <div class="line number60 index59 alt1">
                                                                60</div>
                                                        <div class="line number61 index60 alt2">
                                                                61</div>
                                                        <div class="line number62 index61 alt1">
                                                                62</div>
                                                        <div class="line number63 index62 alt2">
                                                                63</div>
                                                        <div class="line number64 index63 alt1">
                                                                64</div>
                                                        <div class="line number65 index64 alt2">
                                                                65</div>
                                                        <div class="line number66 index65 alt1">
                                                                66</div>
                                                        <div class="line number67 index66 alt2">
                                                                67</div>
                                                        <div class="line number68 index67 alt1">
                                                                68</div>
                                                        <div class="line number69 index68 alt2">
                                                                69</div>
                                                        <div class="line number70 index69 alt1">
                                                                70</div>
                                                        <div class="line number71 index70 alt2">
                                                                71</div>
                                                        <div class="line number72 index71 alt1">
                                                                72</div>
                                                        <div class="line number73 index72 alt2">
                                                                73</div>
                                                        <div class="line number74 index73 alt1">
                                                                74</div>
                                                        <div class="line number75 index74 alt2">
                                                                75</div>
                                                        <div class="line number76 index75 alt1">
                                                                76</div>
                                                        <div class="line number77 index76 alt2">
                                                                77</div>
                                                        <div class="line number78 index77 alt1">
                                                                78</div>
                                                        <div class="line number79 index78 alt2">
                                                                79</div>
                                                        <div class="line number80 index79 alt1">
                                                                80</div>
                                                        <div class="line number81 index80 alt2">
                                                                81</div>
                                                        <div class="line number82 index81 alt1">
                                                                82</div>
                                                        <div class="line number83 index82 alt2">
                                                                83</div>
                                                        <div class="line number84 index83 alt1">
                                                                84</div>
                                                        <div class="line number85 index84 alt2">
                                                                85</div>
                                                        <div class="line number86 index85 alt1">
                                                                86</div>
                                                        <div class="line number87 index86 alt2">
                                                                87</div>
                                                        <div class="line number88 index87 alt1">
                                                                88</div>
                                                        <div class="line number89 index88 alt2">
                                                                89</div>
                                                        <div class="line number90 index89 alt1">
                                                                90</div>
                                                        <div class="line number91 index90 alt2">
                                                                91</div>
                                                        <div class="line number92 index91 alt1">
                                                                92</div>
                                                        <div class="line number93 index92 alt2">
                                                                93</div>
                                                        <div class="line number94 index93 alt1">
                                                                94</div>
                                                        <div class="line number95 index94 alt2">
                                                                95</div>
                                                        <div class="line number96 index95 alt1">
                                                                96</div>
                                                        <div class="line number97 index96 alt2">
                                                                97</div>
                                                        <div class="line number98 index97 alt1">
                                                                98</div>
                                                        <div class="line number99 index98 alt2">
                                                                99</div>
                                                        <div class="line number100 index99 alt1">
                                                                100</div>
                                                        <div class="line number101 index100 alt2">
                                                                101</div>
                                                        <div class="line number102 index101 alt1">
                                                                102</div>
                                                        <div class="line number103 index102 alt2">
                                                                103</div>
                                                        <div class="line number104 index103 alt1">
                                                                104</div>
                                                        <div class="line number105 index104 alt2">
                                                                105</div>
                                                        <div class="line number106 index105 alt1">
                                                                106</div>
                                                        <div class="line number107 index106 alt2">
                                                                107</div>
                                                        <div class="line number108 index107 alt1">
                                                                108</div>
                                                        <div class="line number109 index108 alt2">
                                                                109</div>
                                                        <div class="line number110 index109 alt1">
                                                                110</div>
                                                        <div class="line number111 index110 alt2">
                                                                111</div>
                                                        <div class="line number112 index111 alt1">
                                                                112</div>
                                                        <div class="line number113 index112 alt2">
                                                                113</div>
                                                        <div class="line number114 index113 alt1">
                                                                114</div>
                                                        <div class="line number115 index114 alt2">
                                                                115</div>
                                                        <div class="line number116 index115 alt1">
                                                                116</div>
                                                        <div class="line number117 index116 alt2">
                                                                117</div>
                                                        <div class="line number118 index117 alt1">
                                                                118</div>
                                                        <div class="line number119 index118 alt2">
                                                                119</div>
                                                        <div class="line number120 index119 alt1">
                                                                120</div>
                                                        <div class="line number121 index120 alt2">
                                                                121</div>
                                                        <div class="line number122 index121 alt1">
                                                                122</div>
                                                        <div class="line number123 index122 alt2">
                                                                123</div>
                                                        <div class="line number124 index123 alt1">
                                                                124</div>
                                                        <div class="line number125 index124 alt2">
                                                                125</div>
                                                        <div class="line number126 index125 alt1">
                                                                126</div>
                                                        <div class="line number127 index126 alt2">
                                                                127</div>
                                                        <div class="line number128 index127 alt1">
                                                                128</div>
                                                        <div class="line number129 index128 alt2">
                                                                129</div>
                                                        <div class="line number130 index129 alt1">
                                                                130</div>
                                                        <div class="line number131 index130 alt2">
                                                                131</div>
                                                        <div class="line number132 index131 alt1">
                                                                132</div>
                                                        <div class="line number133 index132 alt2">
                                                                133</div>
                                                        <div class="line number134 index133 alt1">
                                                                134</div>
                                                        <div class="line number135 index134 alt2">
                                                                135</div>
                                                        <div class="line number136 index135 alt1">
                                                                136</div>
                                                        <div class="line number137 index136 alt2">
                                                                137</div>
                                                        <div class="line number138 index137 alt1">
                                                                138</div>
                                                        <div class="line number139 index138 alt2">
                                                                139</div>
                                                        <div class="line number140 index139 alt1">
                                                                140</div>
                                                        <div class="line number141 index140 alt2">
                                                                141</div>
                                                        <div class="line number142 index141 alt1">
                                                                142</div>
                                                        <div class="line number143 index142 alt2">
                                                                143</div>
                                                        <div class="line number144 index143 alt1">
                                                                144</div>
                                                        <div class="line number145 index144 alt2">
                                                                145</div>
                                                        <div class="line number146 index145 alt1">
                                                                146</div>
                                                        <div class="line number147 index146 alt2">
                                                                147</div>
                                                        <div class="line number148 index147 alt1">
                                                                148</div>
                                                        <div class="line number149 index148 alt2">
                                                                149</div>
                                                        <div class="line number150 index149 alt1">
                                                                150</div>
                                                        <div class="line number151 index150 alt2">
                                                                151</div>
                                                        <div class="line number152 index151 alt1">
                                                                152</div>
                                                        <div class="line number153 index152 alt2">
                                                                153</div>
                                                        <div class="line number154 index153 alt1">
                                                                154</div>
                                                        <div class="line number155 index154 alt2">
                                                                155</div>
                                                        <div class="line number156 index155 alt1">
                                                                156</div>
                                                        <div class="line number157 index156 alt2">
                                                                157</div>
                                                        <div class="line number158 index157 alt1">
                                                                158</div>
                                                        <div class="line number159 index158 alt2">
                                                                159</div>
                                                        <div class="line number160 index159 alt1">
                                                                160</div>
                                                        <div class="line number161 index160 alt2">
                                                                161</div>
                                                        <div class="line number162 index161 alt1">
                                                                162</div>
                                                        <div class="line number163 index162 alt2">
                                                                163</div>
                                                        <div class="line number164 index163 alt1">
                                                                164</div>
                                                        <div class="line number165 index164 alt2">
                                                                165</div>
                                                        <div class="line number166 index165 alt1">
                                                                166</div>
                                                        <div class="line number167 index166 alt2">
                                                                167</div>
                                                        <div class="line number168 index167 alt1">
                                                                168</div>
                                                        <div class="line number169 index168 alt2">
                                                                169</div>
                                                        <div class="line number170 index169 alt1">
                                                                170</div>
                                                        <div class="line number171 index170 alt2">
                                                                171</div>
                                                        <div class="line number172 index171 alt1">
                                                                172</div>
                                                        <div class="line number173 index172 alt2">
                                                                173</div>
                                                        <div class="line number174 index173 alt1">
                                                                174</div>
                                                        <div class="line number175 index174 alt2">
                                                                175</div>
                                                        <div class="line number176 index175 alt1">
                                                                176</div>
                                                        <div class="line number177 index176 alt2">
                                                                177</div>
                                                        <div class="line number178 index177 alt1">
                                                                178</div>
                                                        <div class="line number179 index178 alt2">
                                                                179</div>
                                                        <div class="line number180 index179 alt1">
                                                                180</div>
                                                        <div class="line number181 index180 alt2">
                                                                181</div>
                                                        <div class="line number182 index181 alt1">
                                                                182</div>
                                                        <div class="line number183 index182 alt2">
                                                                183</div>
                                                        <div class="line number184 index183 alt1">
                                                                184</div>
                                                        <div class="line number185 index184 alt2">
                                                                185</div>
                                                        <div class="line number186 index185 alt1">
                                                                186</div>
                                                        <div class="line number187 index186 alt2">
                                                                187</div>
                                                        <div class="line number188 index187 alt1">
                                                                188</div>
                                                        <div class="line number189 index188 alt2">
                                                                189</div>
                                                        <div class="line number190 index189 alt1">
                                                                190</div>
                                                        <div class="line number191 index190 alt2">
                                                                191</div>
                                                        <div class="line number192 index191 alt1">
                                                                192</div>
                                                        <div class="line number193 index192 alt2">
                                                                193</div>
                                                        <div class="line number194 index193 alt1">
                                                                194</div>
                                                        <div class="line number195 index194 alt2">
                                                                195</div>
                                                        <div class="line number196 index195 alt1">
                                                                196</div>
                                                        <div class="line number197 index196 alt2">
                                                                197</div>
                                                        <div class="line number198 index197 alt1">
                                                                198</div>
                                                        <div class="line number199 index198 alt2">
                                                                199</div>
                                                        <div class="line number200 index199 alt1">
                                                                200</div>
                                                        <div class="line number201 index200 alt2">
                                                                201</div>
                                                        <div class="line number202 index201 alt1">
                                                                202</div>
                                                        <div class="line number203 index202 alt2">
                                                                203</div>
                                                        <div class="line number204 index203 alt1">
                                                                204</div>
                                                        <div class="line number205 index204 alt2">
                                                                205</div>
                                                        <div class="line number206 index205 alt1">
                                                                206</div>
                                                        <div class="line number207 index206 alt2">
                                                                207</div>
                                                        <div class="line number208 index207 alt1">
                                                                208</div>
                                                        <div class="line number209 index208 alt2">
                                                                209</div>
                                                        <div class="line number210 index209 alt1">
                                                                210</div>
                                                        <div class="line number211 index210 alt2">
                                                                211</div>
                                                        <div class="line number212 index211 alt1">
                                                                212</div>
                                                        <div class="line number213 index212 alt2">
                                                                213</div>
                                                        <div class="line number214 index213 alt1">
                                                                214</div>
                                                        <div class="line number215 index214 alt2">
                                                                215</div>
                                                        <div class="line number216 index215 alt1">
                                                                216</div>
                                                        <div class="line number217 index216 alt2">
                                                                217</div>
                                                        <div class="line number218 index217 alt1">
                                                                218</div>
                                                        <div class="line number219 index218 alt2">
                                                                219</div>
                                                        <div class="line number220 index219 alt1">
                                                                220</div>
                                                        <div class="line number221 index220 alt2">
                                                                221</div>
                                                        <div class="line number222 index221 alt1">
                                                                222</div>
                                                        <div class="line number223 index222 alt2">
                                                                223</div>
                                                        <div class="line number224 index223 alt1">
                                                                224</div>
                                                        <div class="line number225 index224 alt2">
                                                                225</div>
                                                        <div class="line number226 index225 alt1">
                                                                226</div>
                                                        <div class="line number227 index226 alt2">
                                                                227</div>
                                                        <div class="line number228 index227 alt1">
                                                                228</div>
                                                        <div class="line number229 index228 alt2">
                                                                229</div>
                                                        <div class="line number230 index229 alt1">
                                                                230</div>
                                                        <div class="line number231 index230 alt2">
                                                                231</div>
                                                        <div class="line number232 index231 alt1">
                                                                232</div>
                                                        <div class="line number233 index232 alt2">
                                                                233</div>
                                                        <div class="line number234 index233 alt1">
                                                                234</div>
                                                        <div class="line number235 index234 alt2">
                                                                235</div>
                                                        <div class="line number236 index235 alt1">
                                                                236</div>
                                                        <div class="line number237 index236 alt2">
                                                                237</div>
                                                        <div class="line number238 index237 alt1">
                                                                238</div>
                                                        <div class="line number239 index238 alt2">
                                                                239</div>
                                                        <div class="line number240 index239 alt1">
                                                                240</div>
                                                        <div class="line number241 index240 alt2">
                                                                241</div>
                                                        <div class="line number242 index241 alt1">
                                                                242</div>
                                                        <div class="line number243 index242 alt2">
                                                                243</div>
                                                        <div class="line number244 index243 alt1">
                                                                244</div>
                                                        <div class="line number245 index244 alt2">
                                                                245</div>
                                                        <div class="line number246 index245 alt1">
                                                                246</div>
                                                        <div class="line number247 index246 alt2">
                                                                247</div>
                                                        <div class="line number248 index247 alt1">
                                                                248</div>
                                                        <div class="line number249 index248 alt2">
                                                                249</div>
                                                        <div class="line number250 index249 alt1">
                                                                250</div>
                                                        <div class="line number251 index250 alt2">
                                                                251</div>
                                                        <div class="line number252 index251 alt1">
                                                                252</div>
                                                        <div class="line number253 index252 alt2">
                                                                253</div>
                                                        <div class="line number254 index253 alt1">
                                                                254</div>
                                                        <div class="line number255 index254 alt2">
                                                                255</div>
                                                        <div class="line number256 index255 alt1">
                                                                256</div>
                                                        <div class="line number257 index256 alt2">
                                                                257</div>
                                                        <div class="line number258 index257 alt1">
                                                                258</div>
                                                        <div class="line number259 index258 alt2">
                                                                259</div>
                                                        <div class="line number260 index259 alt1">
                                                                260</div>
                                                        <div class="line number261 index260 alt2">
                                                                261</div>
                                                        <div class="line number262 index261 alt1">
                                                                262</div>
                                                        <div class="line number263 index262 alt2">
                                                                263</div>
                                                        <div class="line number264 index263 alt1">
                                                                264</div>
                                                        <div class="line number265 index264 alt2">
                                                                265</div>
                                                        <div class="line number266 index265 alt1">
                                                                266</div>
                                                        <div class="line number267 index266 alt2">
                                                                267</div>
                                                        <div class="line number268 index267 alt1">
                                                                268</div>
                                                        <div class="line number269 index268 alt2">
                                                                269</div>
                                                        <div class="line number270 index269 alt1">
                                                                270</div>
                                                        <div class="line number271 index270 alt2">
                                                                271</div>
                                                        <div class="line number272 index271 alt1">
                                                                272</div>
                                                        <div class="line number273 index272 alt2">
                                                                273</div>
                                                        <div class="line number274 index273 alt1">
                                                                274</div>
                                                        <div class="line number275 index274 alt2">
                                                                275</div>
                                                        <div class="line number276 index275 alt1">
                                                                276</div>
                                                        <div class="line number277 index276 alt2">
                                                                277</div>
                                                        <div class="line number278 index277 alt1">
                                                                278</div>
                                                        <div class="line number279 index278 alt2">
                                                                279</div>
                                                        <div class="line number280 index279 alt1">
                                                                280</div>
                                                        <div class="line number281 index280 alt2">
                                                                281</div>
                                                        <div class="line number282 index281 alt1">
                                                                282</div>
                                                        <div class="line number283 index282 alt2">
                                                                283</div>
                                                        <div class="line number284 index283 alt1">
                                                                284</div>
                                                        <div class="line number285 index284 alt2">
                                                                285</div>
                                                        <div class="line number286 index285 alt1">
                                                                286</div>
                                                        <div class="line number287 index286 alt2">
                                                                287</div>
                                                        <div class="line number288 index287 alt1">
                                                                288</div>
                                                        <div class="line number289 index288 alt2">
                                                                289</div>
                                                        <div class="line number290 index289 alt1">
                                                                290</div>
                                                        <div class="line number291 index290 alt2">
                                                                291</div>
                                                        <div class="line number292 index291 alt1">
                                                                292</div>
                                                        <div class="line number293 index292 alt2">
                                                                293</div>
                                                        <div class="line number294 index293 alt1">
                                                                294</div>
                                                        <div class="line number295 index294 alt2">
                                                                295</div>
                                                        <div class="line number296 index295 alt1">
                                                                296</div>
                                                        <div class="line number297 index296 alt2">
                                                                297</div>
                                                        <div class="line number298 index297 alt1">
                                                                298</div>
                                                        <div class="line number299 index298 alt2">
                                                                299</div>
                                                        <div class="line number300 index299 alt1">
                                                                300</div>
                                                        <div class="line number301 index300 alt2">
                                                                301</div>
                                                        <div class="line number302 index301 alt1">
                                                                302</div>
                                                        <div class="line number303 index302 alt2">
                                                                303</div>
                                                        <div class="line number304 index303 alt1">
                                                                304</div>
                                                        <div class="line number305 index304 alt2">
                                                                305</div>
                                                        <div class="line number306 index305 alt1">
                                                                306</div>
                                                        <div class="line number307 index306 alt2">
                                                                307</div>
                                                        <div class="line number308 index307 alt1">
                                                                308</div>
                                                        <div class="line number309 index308 alt2">
                                                                309</div>
                                                        <div class="line number310 index309 alt1">
                                                                310</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash comments"># 井号 (comments)</code>
</div>
                                                                <div class="line number2 index1 alt1">
                                                                        <code class="bash comments">#管理员 $普通用户</code>
</div>
                                                                <div class="line number3 index2 alt2">
                                                                         </div>
                                                                <div class="line number4 index3 alt1">
                                                                        <code class="bash plain">脚本中</code>
</div>
                                                                <div class="line number5 index4 alt2">
                                                                         </div>
                                                                <div class="line number6 index5 alt1">
                                                                        <code class="bash preprocessor bold">#!/bin/bash #!/bin/sh</code>
</div>
                                                                <div class="line number7 index6 alt2">
                                                                        <code class="bash plain">井号也常出现在一行的开头,或者位于完整指令之后,这类情况表示符号后面的是注解文字,不会被执行。</code>
</div>
                                                                <div class="line number8 index7 alt1">
                                                                         </div>
                                                                <div class="line number9 index8 alt2">
                                                                        <code class="bash comments"># This line is comments.</code>
</div>
                                                                <div class="line number10 index9 alt1">
                                                                        <code class="bash functions">echo</code> <code class="bash string">"a = $a"</code> <code class="bash comments"># a = 0</code>
</div>
                                                                <div class="line number11 index10 alt2">
                                                                        <code class="bash plain">由于这个特性,当临时不想执行某行指令时,只需在该行开头加上 </code><code class="bash comments"># 就行了。这常用在撰写过程中。</code>
</div>
                                                                <div class="line number12 index11 alt1">
                                                                        <code class="bash comments">#echo "a = $a" # a = 0</code>
</div>
                                                                <div class="line number13 index12 alt2">
                                                                        <code class="bash plain">如果被用在指令中,或者引号双引号括住的话,或者在倒斜线的后面,那他就变成一般符号,不具上述的特殊功能。</code>
</div>
                                                                <div class="line number14 index13 alt1">
                                                                         </div>
                                                                <div class="line number15 index14 alt2">
                                                                        <code class="bash plain">=======================================================================================</code>
</div>
                                                                <div class="line number16 index15 alt1">
                                                                         </div>
                                                                <div class="line number17 index16 alt2">
                                                                        <code class="bash plain">~ 帐户的 home 目录</code>
</div>
                                                                <div class="line number18 index17 alt1">
                                                                         </div>
                                                                <div class="line number19 index18 alt2">
                                                                        <code class="bash plain">代表使用者的 home 目录 </code><code class="bash functions">cd</code> <code class="bash plain">~ 也可以直接在符号后加上某帐户的名称:</code><code class="bash functions">cd</code> <code class="bash plain">~ user或者当成是路径的一部份:~</code><code class="bash plain">/bin</code>
</div>
                                                                <div class="line number20 index19 alt1">
                                                                         </div>
                                                                <div class="line number21 index20 alt2">
                                                                        <code class="bash plain">~+ 当前的工作目录,这个符号代表当前的工作目录,她和内建指令 </code><code class="bash functions">pwd</code><code class="bash plain">的作用是相同的。</code>
</div>
                                                                <div class="line number22 index21 alt1">
                                                                         </div>
                                                                <div class="line number23 index22 alt2">
                                                                        <code class="bash comments"># echo ~+/var/log</code>
</div>
                                                                <div class="line number24 index23 alt1">
                                                                         </div>
                                                                <div class="line number25 index24 alt2">
                                                                        <code class="bash plain">~- 上次的工作目录,这个符号代表上次的工作目录。</code>
</div>
                                                                <div class="line number26 index25 alt1">
                                                                        <code class="bash comments"># echo ~-/etc/httpd/logs</code>
</div>
                                                                <div class="line number27 index26 alt2">
                                                                         </div>
                                                                <div class="line number28 index27 alt1">
                                                                        <code class="bash plain">====================================================================================</code>
</div>
                                                                <div class="line number29 index28 alt2">
                                                                         </div>
                                                                <div class="line number30 index29 alt1">
                                                                        <code class="bash plain">; 分号 (Command separator)</code>
</div>
                                                                <div class="line number31 index30 alt2">
                                                                         </div>
                                                                <div class="line number32 index31 alt1">
                                                                        <code class="bash plain">在 shell 中,担任</code><code class="bash string">"连续指令"</code><code class="bash plain">功能的符号就是</code><code class="bash string">"分号"</code><code class="bash plain">。譬如以下的例子:</code><code class="bash functions">cd</code> <code class="bash plain">~</code><code class="bash plain">/backup</code> <code class="bash plain">; </code><code class="bash functions">mkdir</code> <code class="bash plain">startup ;</code><code class="bash functions">cp</code> <code class="bash plain">~/.* startup/.</code>
</div>
                                                                <div class="line number33 index32 alt2">
                                                                         </div>
                                                                <div class="line number34 index33 alt1">
                                                                        <code class="bash plain">=====================================================================================</code>
</div>
                                                                <div class="line number35 index34 alt2">
                                                                         </div>
                                                                <div class="line number36 index35 alt1">
                                                                        <code class="bash plain">;; 连续分号 (Terminator)</code>
</div>
                                                                <div class="line number37 index36 alt2">
                                                                         </div>
                                                                <div class="line number38 index37 alt1">
                                                                        <code class="bash plain">专用在 </code><code class="bash keyword">case</code> <code class="bash plain">的选项,担任 Terminator 的角色。</code>
</div>
                                                                <div class="line number39 index38 alt2">
                                                                        <code class="bash keyword">case</code> <code class="bash string">"$fop"</code> <code class="bash plain">inhelp) </code><code class="bash functions">echo</code> <code class="bash string">"Usage: Command -help -version filename"</code><code class="bash plain">;;version) </code><code class="bash functions">echo</code> <code class="bash string">"version 0.1"</code> <code class="bash plain">;;esac</code>
</div>
                                                                <div class="line number40 index39 alt1">
                                                                         </div>
                                                                <div class="line number41 index40 alt2">
                                                                        <code class="bash plain">=====================================================================================</code>
</div>
                                                                <div class="line number42 index41 alt1">
                                                                         </div>
                                                                <div class="line number43 index42 alt2">
                                                                        <code class="bash plain">. 逗号 (dot,就是“点”)</code>
</div>
                                                                <div class="line number44 index43 alt1">
                                                                         </div>
                                                                <div class="line number45 index44 alt2">
                                                                        <code class="bash plain">在 shell 中,使用者应该都清楚,一个 dot 代表当前目录,两个 dot 代表上层目录。</code>
</div>
                                                                <div class="line number46 index45 alt1">
                                                                        <code class="bash plain">CDPATH=.:~:</code><code class="bash plain">/home</code><code class="bash plain">:</code><code class="bash plain">/home/web</code><code class="bash plain">:</code><code class="bash plain">/var</code><code class="bash plain">:</code><code class="bash plain">/usr/local</code>
</div>
                                                                <div class="line number47 index46 alt2">
                                                                        <code class="bash plain">在上行 CDPATH 的设定中,等号后的 dot 代表的就是当前目录的意思。</code>
</div>
                                                                <div class="line number48 index47 alt1">
                                                                        <code class="bash plain">如果档案名称以 dot 开头,该档案就属特殊档案,用 </code><code class="bash functions">ls</code> <code class="bash plain">指令必须加上 -a 选项才会显示。除此之外,在 regularexpression 中,一个 dot 代表匹配一个字元。</code>
</div>
                                                                <div class="line number49 index48 alt2">
                                                                         </div>
                                                                <div class="line number50 index49 alt1">
                                                                        <code class="bash plain">===================================================================================</code>
</div>
                                                                <div class="line number51 index50 alt2">
                                                                         </div>
                                                                <div class="line number52 index51 alt1">
                                                                        <code class="bash string">'string'</code> <code class="bash plain">单引号 (single quote)</code>
</div>
                                                                <div class="line number53 index52 alt2">
                                                                         </div>
                                                                <div class="line number54 index53 alt1">
                                                                        <code class="bash plain">被单引号用括住的内容,将被视为单一字串。在引号内的代表变数的$符号,没有作用,也就是说,他被视为一般符号处理,防止任何变量替换。</code>
</div>
                                                                <div class="line number55 index54 alt2">
                                                                        <code class="bash plain">heyyou=homeecho </code><code class="bash string">'$heyyou'</code> <code class="bash comments"># We get $heyyou</code>
</div>
                                                                <div class="line number56 index55 alt1">
                                                                         </div>
                                                                <div class="line number57 index56 alt2">
                                                                        <code class="bash string">"string"</code> <code class="bash plain">双引号 (double quote)</code>
</div>
                                                                <div class="line number58 index57 alt1">
                                                                        <code class="bash plain">被双引号用括住的内容,将被视为单一字串。它防止通配符扩展,但允许变量扩展。这点与单引数的处理方式不同。</code>
</div>
                                                                <div class="line number59 index58 alt2">
                                                                        <code class="bash plain">heyyou=homeecho </code><code class="bash string">"$heyyou"</code> <code class="bash comments"># We get home</code>
</div>
                                                                <div class="line number60 index59 alt1">
                                                                         </div>
                                                                <div class="line number61 index60 alt2">
                                                                        <code class="bash plain">`</code><code class="bash functions">command</code><code class="bash plain">` 倒引号 (backticks)</code>
</div>
                                                                <div class="line number62 index61 alt1">
                                                                         </div>
                                                                <div class="line number63 index62 alt2">
                                                                        <code class="bash plain">在前面的单双引号,括住的是字串,但如果该字串是一列命令列,会怎样?答案是不会执行。要处理这种情况,我们得用倒单引号来做。</code>
</div>
                                                                <div class="line number64 index63 alt1">
                                                                        <code class="bash plain">fdv=`</code><code class="bash functions">date</code> <code class="bash plain">+%F`</code><code class="bash functions">echo</code> <code class="bash string">"Today $fdv"</code>
</div>
                                                                <div class="line number65 index64 alt2">
                                                                        <code class="bash plain">在倒引号内的 </code><code class="bash functions">date</code> <code class="bash plain">+%F 会被视为指令,执行的结果会带入 fdv 变数中。</code>
</div>
                                                                <div class="line number66 index65 alt1">
                                                                         </div>
                                                                <div class="line number67 index66 alt2">
                                                                        <code class="bash spaces"> </code><code class="bash plain">====================================================================================</code>
</div>
                                                                <div class="line number68 index67 alt1">
                                                                         </div>
                                                                <div class="line number69 index68 alt2">
                                                                        <code class="bash plain">, 逗点 (comma,标点中的逗号)</code>
</div>
                                                                <div class="line number70 index69 alt1">
                                                                         </div>
                                                                <div class="line number71 index70 alt2">
                                                                        <code class="bash plain">这个符号常运用在运算当中当做</code><code class="bash string">"区隔"</code><code class="bash plain">用途。如下例</code>
</div>
                                                                <div class="line number72 index71 alt1">
                                                                        <code class="bash comments">#!/bin/bashlet "t1 = ((a = 5 + 3, b = 7 - 1, c = 15 / 3))"echo "t1= $t1, a = $a, b = $b"</code>
</div>
                                                                <div class="line number73 index72 alt2">
                                                                         </div>
                                                                <div class="line number74 index73 alt1">
                                                                        <code class="bash plain">====================================================================================</code>
</div>
                                                                <div class="line number75 index74 alt2">
                                                                         </div>
                                                                <div class="line number76 index75 alt1">
                                                                        <code class="bash plain">/ 斜线 (forward slash)</code>
</div>
                                                                <div class="line number77 index76 alt2">
                                                                         </div>
                                                                <div class="line number78 index77 alt1">
                                                                        <code class="bash plain">在路径表示时,代表目录。</code>
</div>
                                                                <div class="line number79 index78 alt2">
                                                                        <code class="bash functions">cd</code> <code class="bash plain">/etc/rc</code><code class="bash plain">.dcd ../..</code><code class="bash functions">cd</code> <code class="bash plain">/</code>
</div>
                                                                <div class="line number80 index79 alt1">
                                                                        <code class="bash plain">通常单一的 / 代表 root 根目录的意思;在四则运算中,代表除法的符号。</code>
</div>
                                                                <div class="line number81 index80 alt2">
                                                                        <code class="bash functions">let</code> <code class="bash string">"num1 = ((a = 10 / 2, b = 25 / 5))"</code>
</div>
                                                                <div class="line number82 index81 alt1">
                                                                        <code class="bash plain">====================================================================================</code>
</div>
                                                                <div class="line number83 index82 alt2">
                                                                        <code class="bash plain">\ 倒斜线</code>
</div>
                                                                <div class="line number84 index83 alt1">
                                                                         </div>
                                                                <div class="line number85 index84 alt2">
                                                                        <code class="bash plain">在交互模式下的escape 字元,有几个作用;放在指令前,有取消 aliases的作用;放在特殊符号前,则该特殊符号的作用消失;放在指令的最末端,表示指令连接下一行。</code>
</div>
                                                                <div class="line number86 index85 alt1">
                                                                        <code class="bash comments"># type rmrm is aliased to `rm -i'# \rm ./*.log</code>
</div>
                                                                <div class="line number87 index86 alt2">
                                                                        <code class="bash plain">上例,我在 </code><code class="bash functions">rm</code> <code class="bash plain">指令前加上 escape 字元,作用是暂时取消别名的功能,将 </code><code class="bash functions">rm</code> <code class="bash plain">指令还原。</code>
</div>
                                                                <div class="line number88 index87 alt1">
                                                                        <code class="bash comments"># bkdir=/home# echo "Backup dir, \$bkdir = $bkdir"Backup dir,$bkdir = /home</code>
</div>
                                                                <div class="line number89 index88 alt2">
                                                                        <code class="bash plain">上例 </code><code class="bash functions">echo</code> <code class="bash plain">内的 \$bkdir,escape 将 $ 变数的功能取消了,因此,会输出 $bkdir,而第二个 $bkdir则会输出变数的内容 </code><code class="bash plain">/home</code><code class="bash plain">。</code>
</div>
                                                                <div class="line number90 index89 alt1">
                                                                         </div>
                                                                <div class="line number91 index90 alt2">
                                                                        <code class="bash plain">=======================================================================================</code>
</div>
                                                                <div class="line number92 index91 alt1">
                                                                         </div>
                                                                <div class="line number93 index92 alt2">
                                                                        <code class="bash plain">| 管道 (pipeline)</code>
</div>
                                                                <div class="line number94 index93 alt1">
                                                                         </div>
                                                                <div class="line number95 index94 alt2">
                                                                        <code class="bash plain">是 UNIX 系统,基础且重要的观念。连结上个指令的标准输出,做为下个指令的标准输入。</code>
</div>
                                                                <div class="line number96 index95 alt1">
                                                                        <code class="bash functions">who</code> <code class="bash plain">| </code><code class="bash functions">wc</code> <code class="bash plain">-l</code>
</div>
                                                                <div class="line number97 index96 alt2">
                                                                        <code class="bash plain">善用这个观念,对精简 script 有相当的帮助。</code>
</div>
                                                                <div class="line number98 index97 alt1">
                                                                         </div>
                                                                <div class="line number99 index98 alt2">
                                                                        <code class="bash plain">====================================================================================</code>
</div>
                                                                <div class="line number100 index99 alt1">
                                                                         </div>
                                                                <div class="line number101 index100 alt2">
                                                                        <code class="bash plain">! 惊叹号(negate or reverse)</code>
</div>
                                                                <div class="line number102 index101 alt1">
                                                                         </div>
                                                                <div class="line number103 index102 alt2">
                                                                        <code class="bash plain">通常它代表反逻辑的作用,譬如条件侦测中,用 != 来代表</code><code class="bash string">"不等于"</code>
</div>
                                                                <div class="line number104 index103 alt1">
                                                                        <code class="bash keyword">if</code> <code class="bash plain">[ </code><code class="bash string">"$?"</code> <code class="bash plain">!= 0 ]thenecho </code><code class="bash string">"Executes error"</code><code class="bash functions">exit</code> <code class="bash plain">1fi</code>
</div>
                                                                <div class="line number105 index104 alt2">
                                                                        <code class="bash plain">在规则表达式中她担任 </code><code class="bash string">"反逻辑"</code> <code class="bash plain">的角色</code>
</div>
                                                                <div class="line number106 index105 alt1">
                                                                        <code class="bash functions">ls</code> <code class="bash plain">a[!0-9]</code>
</div>
                                                                <div class="line number107 index106 alt2">
                                                                        <code class="bash plain">上例,代表显示除了a0, a1 .... a9 这几个文件的其他文件。</code>
</div>
                                                                <div class="line number108 index107 alt1">
                                                                         </div>
                                                                <div class="line number109 index108 alt2">
                                                                        <code class="bash plain">=====================================================================================</code>
</div>
                                                                <div class="line number110 index109 alt1">
                                                                         </div>
                                                                <div class="line number111 index110 alt2">
                                                                        <code class="bash plain">: 冒号</code>
</div>
                                                                <div class="line number112 index111 alt1">
                                                                         </div>
                                                                <div class="line number113 index112 alt2">
                                                                        <code class="bash plain">在 </code><code class="bash functions">bash</code> <code class="bash plain">中,这是一个内建指令:</code><code class="bash string">"什么事都不干"</code><code class="bash plain">,但返回状态值 0。</code>
</div>
                                                                <div class="line number114 index113 alt1">
                                                                        <code class="bash plain">:</code>
</div>
                                                                <div class="line number115 index114 alt2">
                                                                        <code class="bash functions">echo</code> <code class="bash plain">$? </code><code class="bash comments"># 回应为 0</code>
</div>
                                                                <div class="line number116 index115 alt1">
                                                                        <code class="bash plain">: &gt; f.。不仅写法简短了,而且执行效率也好上许多。</code>
</div>
                                                                <div class="line number117 index116 alt2">
                                                                        <code class="bash plain">有时,也会出现以下这类的用法</code>
</div>
                                                                <div class="line number118 index117 alt1">
                                                                        <code class="bash plain">: ${HOSTNAME?} ${USER?} ${MAIL?}</code>
</div>
                                                                <div class="line number119 index118 alt2">
                                                                        <code class="bash plain">这行的作用是,检查这些环境变数是否已设置,没有设置的将会以标准错误显示错误讯息。像这种检查如果使用类似 </code><code class="bash functions">test</code> <code class="bash plain">或 </code><code class="bash keyword">if</code><code class="bash plain">这类的做法,基本上也可以处理,但都比不上上例的简洁与效率。</code>
</div>
                                                                <div class="line number120 index119 alt1">
                                                                        <code class="bash plain">除了上述之外,还有一个地方必须使用冒号</code>
</div>
                                                                <div class="line number121 index120 alt2">
                                                                         </div>
                                                                <div class="line number122 index121 alt1">
                                                                        <code class="bash plain">在使用者自己的HOME 目录下的 .bash_profile或任何功能相似的档案中,设定关于</code><code class="bash string">"路径"</code><code class="bash plain">的场合中,我们都使用冒号,来做区隔。</code>
</div>
                                                                <div class="line number123 index122 alt2">
                                                                         </div>
                                                                <div class="line number124 index123 alt1">
                                                                        <code class="bash plain">====================================================================================</code>
</div>
                                                                <div class="line number125 index124 alt2">
                                                                         </div>
                                                                <div class="line number126 index125 alt1">
                                                                        <code class="bash plain">? 问号 (wild card)</code>
</div>
                                                                <div class="line number127 index126 alt2">
                                                                         </div>
                                                                <div class="line number128 index127 alt1">
                                                                        <code class="bash plain">在文件名扩展(Filename expansion)上扮演的角色是匹配一个任意的字元,但不包含 null字元。</code>
</div>
                                                                <div class="line number129 index128 alt2">
                                                                        <code class="bash comments"># ls a?a1</code>
</div>
                                                                <div class="line number130 index129 alt1">
                                                                        <code class="bash plain">善用她的特点,可以做比较精确的档名匹配。</code>
</div>
                                                                <div class="line number131 index130 alt2">
                                                                         </div>
                                                                <div class="line number132 index131 alt1">
                                                                        <code class="bash plain">* 星号 (wild card)</code>
</div>
                                                                <div class="line number133 index132 alt2">
                                                                        <code class="bash plain">相当常用的符号。在文件名扩展(Filename expansion)上,她用来代表任何字元,包含null 字元。</code>
</div>
                                                                <div class="line number134 index133 alt1">
                                                                        <code class="bash comments"># ls a*a a1 access_log</code>
</div>
                                                                <div class="line number135 index134 alt2">
                                                                        <code class="bash plain">在运算时,它则代表 </code><code class="bash string">"乘法"</code><code class="bash plain">。</code>
</div>
                                                                <div class="line number136 index135 alt1">
                                                                        <code class="bash functions">let</code> <code class="bash string">"fmult=2*3"</code>
</div>
                                                                <div class="line number137 index136 alt2">
                                                                        <code class="bash plain">除了内建指令 </code><code class="bash functions">let</code><code class="bash plain">,还有一个关于运算的指令</code><code class="bash functions">expr</code><code class="bash plain">,星号在这里也担任</code><code class="bash string">"乘法"</code><code class="bash plain">的角色。不过在使用上得小心,他的前面必须加上escape 字元。</code>
</div>
                                                                <div class="line number138 index137 alt1">
                                                                        <code class="bash plain">======================================================================================</code>
</div>
                                                                <div class="line number139 index138 alt2">
                                                                         </div>
                                                                <div class="line number140 index139 alt1">
                                                                        <code class="bash plain">** 次方运算</code>
</div>
                                                                <div class="line number141 index140 alt2">
                                                                        <code class="bash plain">两个星号在运算时代表 </code><code class="bash string">"次方"</code> <code class="bash plain">的意思。</code>
</div>
                                                                <div class="line number142 index141 alt1">
                                                                        <code class="bash functions">let</code> <code class="bash string">"sus=2**3"</code> <code class="bash functions">echo</code> <code class="bash string">"sus = $sus"</code> <code class="bash comments"># sus = 8</code>
</div>
                                                                <div class="line number143 index142 alt2">
                                                                        <code class="bash plain">=====================================================================================</code>
</div>
                                                                <div class="line number144 index143 alt1">
                                                                         </div>
                                                                <div class="line number145 index144 alt2">
                                                                        <code class="bash plain">$ 钱号(dollar sign)</code>
</div>
                                                                <div class="line number146 index145 alt1">
                                                                        <code class="bash plain">变量替换(Variable Substitution)的代表符号。</code>
</div>
                                                                <div class="line number147 index146 alt2">
                                                                        <code class="bash plain">vrs=123 </code><code class="bash functions">echo</code> <code class="bash string">"vrs = $vrs"</code> <code class="bash comments"># vrs = 123</code>
</div>
                                                                <div class="line number148 index147 alt1">
                                                                        <code class="bash plain">另外,在 Regular Expressions 里被定义为 </code><code class="bash string">"行"</code> <code class="bash plain">的最末端 (end-of-line)。这个常用在</code><code class="bash functions">grep</code><code class="bash plain">、</code><code class="bash functions">sed</code><code class="bash plain">、</code><code class="bash functions">awk</code> <code class="bash plain">以及 vim(</code><code class="bash functions">vi</code><code class="bash plain">) 当中。</code>
</div>
                                                                <div class="line number149 index148 alt2">
                                                                        <code class="bash plain">=====================================================================================</code>
</div>
                                                                <div class="line number150 index149 alt1">
                                                                         </div>
                                                                <div class="line number151 index150 alt2">
                                                                        <code class="bash plain">${} 变量的正规表达式</code>
</div>
                                                                <div class="line number152 index151 alt1">
                                                                        <code class="bash functions">bash</code> <code class="bash plain">对 ${} 定义了不少用法。以下是取自线上说明的表列</code>
</div>
                                                                <div class="line number153 index152 alt2">
                                                                         </div>
                                                                <div class="line number154 index153 alt1">
                                                                        <code class="bash plain">$*</code>
</div>
                                                                <div class="line number155 index154 alt2">
                                                                        <code class="bash plain">$* 引用script的执行引用变量,引用参数的算法与一般指令相同,指令本身为0,其后为1,然后依此类推。引用变量的代表方式如下:</code>
</div>
                                                                <div class="line number156 index155 alt1">
                                                                        <code class="bash plain">$0, $1, $2, $3, $4, $5, $6, $7, $8, $9, ${10}, ${11}.....</code>
</div>
                                                                <div class="line number157 index156 alt2">
                                                                        <code class="bash plain">个位数的,可直接使用数字,但两位数以上,则必须使用 {} 符号来括住。</code>
</div>
                                                                <div class="line number158 index157 alt1">
                                                                        <code class="bash plain">$* 则是代表所有引用变量的符号。使用时,得视情况加上双引号。</code>
</div>
                                                                <div class="line number159 index158 alt2">
                                                                        <code class="bash functions">echo</code> <code class="bash string">"$*"</code>
</div>
                                                                <div class="line number160 index159 alt1">
                                                                        <code class="bash plain">还有一个与 $* 具有相同作用的符号,但效用与处理方式略为不同的符号。</code>
</div>
                                                                <div class="line number161 index160 alt2">
                                                                         </div>
                                                                <div class="line number162 index161 alt1">
                                                                        <code class="bash plain">$@</code>
</div>
                                                                <div class="line number163 index162 alt2">
                                                                        <code class="bash plain">$@ 与 $* 具有相同作用的符号,不过她们两者有一个不同点。</code>
</div>
                                                                <div class="line number164 index163 alt1">
                                                                        <code class="bash plain">符号 $* 将所有的引用变量视为一个整体。但符号 $@ 则仍旧保留每个引用变量的区段观念。</code>
</div>
                                                                <div class="line number165 index164 alt2">
                                                                         </div>
                                                                <div class="line number166 index165 alt1">
                                                                        <code class="bash plain">$</code><code class="bash comments">#</code>
</div>
                                                                <div class="line number167 index166 alt2">
                                                                        <code class="bash plain">这也是与引用变量相关的符号,她的作用是告诉你,引用变量的总数量是多少。</code>
</div>
                                                                <div class="line number168 index167 alt1">
                                                                        <code class="bash functions">echo</code> <code class="bash string">"$#"</code>
</div>
                                                                <div class="line number169 index168 alt2">
                                                                         </div>
                                                                <div class="line number170 index169 alt1">
                                                                        <code class="bash plain">$? 状态值 (status variable)</code>
</div>
                                                                <div class="line number171 index170 alt2">
                                                                        <code class="bash plain">一般来说,UNIX(linux) 系统的进程以执行系统调用</code><code class="bash functions">exit</code><code class="bash plain">()来结束的。这个回传值就是status值。回传给父进程,用来检查子进程的执行状态。</code>
</div>
                                                                <div class="line number172 index171 alt1">
                                                                        <code class="bash plain">一般指令程序倘若执行成功,其回传值为 0;失败为 1。</code>
</div>
                                                                <div class="line number173 index172 alt2">
                                                                        <code class="bash functions">tar</code> <code class="bash plain">cvfz dfbackup.</code><code class="bash functions">tar</code><code class="bash plain">.gz </code><code class="bash plain">/home/user</code> <code class="bash plain">&gt; </code><code class="bash plain">/dev/nullecho</code><code class="bash string">"$?"</code><code class="bash plain">$$</code>
</div>
                                                                <div class="line number174 index173 alt1">
                                                                        <code class="bash plain">由于进程的ID是唯一的,所以在同一个时间,不可能有重复性的 PID。有时,script会需要产生临时文件,用来存放必要的资料。而此script亦有可能在同一时间被使用者们使用。在这种情况下,固定文件名在写法上就显的不可靠。唯有产生动态文件名,才能符合需要。符号$$或许可以符合这种需求。它代表当前shell 的 PID。</code>
</div>
                                                                <div class="line number175 index174 alt2">
                                                                        <code class="bash functions">echo</code> <code class="bash string">"$HOSTNAME, $USER, $MAIL"</code> <code class="bash plain">&gt; ftmp.$$</code>
</div>
                                                                <div class="line number176 index175 alt1">
                                                                        <code class="bash plain">使用它来作为文件名的一部份,可以避免在同一时间,产生相同文件名的覆盖现象。</code>
</div>
                                                                <div class="line number177 index176 alt2">
                                                                        <code class="bash functions">ps</code><code class="bash plain">: 基本上,系统会回收执行完毕的 PID,然后再次依需要分配使用。所以 script 即使临时文件是使用动态档名的写法,如果script 执行完毕后仍不加以清除,会产生其他问题。</code>
</div>
                                                                <div class="line number178 index177 alt1">
                                                                         </div>
                                                                <div class="line number179 index178 alt2">
                                                                        <code class="bash plain">====================================================================================</code>
</div>
                                                                <div class="line number180 index179 alt1">
                                                                         </div>
                                                                <div class="line number181 index180 alt2">
                                                                        <code class="bash plain">( ) 指令群组 (</code><code class="bash functions">command</code> <code class="bash plain">group)</code>
</div>
                                                                <div class="line number182 index181 alt1">
                                                                        <code class="bash plain">用括号将一串连续指令括起来,这种用法对 shell 来说,称为指令群组。如下面的例子:(</code><code class="bash functions">cd</code> <code class="bash plain">~ ; vcgh=`</code><code class="bash functions">pwd</code><code class="bash plain">` ;</code><code class="bash functions">echo</code> <code class="bash plain">$vcgh),指令群组有一个特性,shell会以产生subshell来执行这组指令。因此,在其中所定义的变数,仅作用于指令群组本身。我们来看个例子</code>
</div>
                                                                <div class="line number183 index182 alt2">
                                                                        <code class="bash comments"># cat ftmp-01#!/bin/basha=fsh(a=incg ; echo -e "\n $a \n")echo $a#./ftmp-01incgfsh</code>
</div>
                                                                <div class="line number184 index183 alt1">
                                                                        <code class="bash plain">除了上述的指令群组,括号也用在 array 变数的定义上;另外也应用在其他可能需要加上escape字元才能使用的场合,如运算式。</code>
</div>
                                                                <div class="line number185 index184 alt2">
                                                                         </div>
                                                                <div class="line number186 index185 alt1">
                                                                        <code class="bash plain">(( ))</code>
</div>
                                                                <div class="line number187 index186 alt2">
                                                                        <code class="bash plain">这组符号的作用与 </code><code class="bash functions">let</code> <code class="bash plain">指令相似,用在算数运算上,是 </code><code class="bash functions">bash</code> <code class="bash plain">的内建功能。所以,在执行效率上会比使用 </code><code class="bash functions">let</code><code class="bash plain">指令要好许多。</code>
</div>
                                                                <div class="line number188 index187 alt1">
                                                                        <code class="bash preprocessor bold">#!/bin/bash(( a = 10 ))echo -e "inital value, a = $a\n"(( a++))echo "after a++, a = $a"</code>
</div>
                                                                <div class="line number189 index188 alt2">
                                                                         </div>
                                                                <div class="line number190 index189 alt1">
                                                                        <code class="bash plain">{ } 大括号 (Block of code)</code>
</div>
                                                                <div class="line number191 index190 alt2">
                                                                        <code class="bash plain">有时候 script 当中会出现,大括号中会夹着一段或几段以</code><code class="bash string">"分号"</code><code class="bash plain">做结尾的指令或变数设定。</code>
</div>
                                                                <div class="line number192 index191 alt1">
                                                                        <code class="bash comments"># cat ftmp-02#!/bin/basha=fsh{a=inbc ; echo -e "\n $a \n"}echo $a#./ftmp-02inbcinbc</code>
</div>
                                                                <div class="line number193 index192 alt2">
                                                                        <code class="bash plain">这种用法与上面介绍的指令群组非常相似,但有个不同点,它在当前的 shell 执行,不会产生 subshell。</code>
</div>
                                                                <div class="line number194 index193 alt1">
                                                                        <code class="bash plain">大括号也被运用在 </code><code class="bash string">"函数"</code> <code class="bash plain">的功能上。广义地说,单纯只使用大括号时,作用就像是个没有指定名称的函数一般。因此,这样写 script也是相当好的一件事。尤其对输出输入的重导向上,这个做法可精简 script 的复杂度。</code>
</div>
                                                                <div class="line number195 index194 alt2">
                                                                        <code class="bash plain">此外,大括号还有另一种用法,如下</code>
</div>
                                                                <div class="line number196 index195 alt1">
                                                                        <code class="bash plain">{xx,yy,zz,...}</code>
</div>
                                                                <div class="line number197 index196 alt2">
                                                                        <code class="bash plain">这种大括号的组合,常用在字串的组合上,来看个例子</code>
</div>
                                                                <div class="line number198 index197 alt1">
                                                                        <code class="bash functions">mkdir</code> <code class="bash plain">{userA,userB,userC}-{home,bin,data}</code>
</div>
                                                                <div class="line number199 index198 alt2">
                                                                        <code class="bash plain">我们得到 userA-home, userA-bin, userA-data, userB-home, userB-bin,userB-data, userC-home, userC-bin,userC-data,这几个目录。这组符号在适用性上相当广泛。能加以善用的话,回报是精简与效率。像下面的例子</code>
</div>
                                                                <div class="line number200 index199 alt1">
                                                                        <code class="bash functions">chown</code> <code class="bash plain">root </code><code class="bash plain">/usr/</code><code class="bash plain">{ucb/{ex,edit},lib/{ex?.?*,how_ex}}</code>
</div>
                                                                <div class="line number201 index200 alt2">
                                                                        <code class="bash plain">如果不是因为支援这种用法,我们得写几行重复几次呀!</code>
</div>
                                                                <div class="line number202 index201 alt1">
                                                                         </div>
                                                                <div class="line number203 index202 alt2">
                                                                        <code class="bash plain">[ ] 中括号</code>
</div>
                                                                <div class="line number204 index203 alt1">
                                                                        <code class="bash plain">常出现在流程控制中,扮演括住判断式的作用。</code><code class="bash keyword">if</code> <code class="bash plain">[ </code><code class="bash string">"$?"</code> <code class="bash plain">!= 0 ]thenecho </code><code class="bash string">"Executes error"</code><code class="bash plain">exit1fi</code>
</div>
                                                                <div class="line number205 index204 alt2">
                                                                        <code class="bash plain">这个符号在正则表达式中担任类似 </code><code class="bash string">"范围"</code> <code class="bash plain">或 </code><code class="bash string">"集合"</code> <code class="bash plain">的角色</code>
</div>
                                                                <div class="line number206 index205 alt1">
                                                                        <code class="bash functions">rm</code> <code class="bash plain">-r 200</code>
</div>
                                                                <div class="line number207 index206 alt2">
                                                                        <code class="bash plain">上例,代表删除 2001, 2002, 2003, 2004 等目录的意思。</code>
</div>
                                                                <div class="line number208 index207 alt1">
                                                                         </div>
                                                                <div class="line number209 index208 alt2">
                                                                        <code class="bash plain">[[  ]]</code>
</div>
                                                                <div class="line number210 index209 alt1">
                                                                        <code class="bash plain">这组符号与先前的 [] 符号,基本上作用相同,但她允许在其中直接使用 || 与&amp;&amp; 逻辑等符号。</code>
</div>
                                                                <div class="line number211 index210 alt2">
                                                                        <code class="bash preprocessor bold">#!/bin/bashread akif [[ $ak &gt; 5 || $ak&lt; 9 ]]thenecho $akfi</code>
</div>
                                                                <div class="line number212 index211 alt1">
                                                                         </div>
                                                                <div class="line number213 index212 alt2">
                                                                        <code class="bash plain">==============================================================================</code>
</div>
                                                                <div class="line number214 index213 alt1">
                                                                         </div>
                                                                <div class="line number215 index214 alt2">
                                                                        <code class="bash plain">|| 逻辑符号</code>
</div>
                                                                <div class="line number216 index215 alt1">
                                                                        <code class="bash plain">这个会时常看到,代表 or 逻辑的符号。</code>
</div>
                                                                <div class="line number217 index216 alt2">
                                                                         </div>
                                                                <div class="line number218 index217 alt1">
                                                                        <code class="bash plain">&amp;&amp; 逻辑符号</code>
</div>
                                                                <div class="line number219 index218 alt2">
                                                                        <code class="bash plain">这个也会常看到,代表 and 逻辑的符号。</code>
</div>
                                                                <div class="line number220 index219 alt1">
                                                                         </div>
                                                                <div class="line number221 index220 alt2">
                                                                        <code class="bash plain">&amp; 后台工作</code>
</div>
                                                                <div class="line number222 index221 alt1">
                                                                        <code class="bash plain">单一个&amp; 符号,且放在完整指令列的最后端,即表示将该指令列放入后台中工作。</code>
</div>
                                                                <div class="line number223 index222 alt2">
                                                                        <code class="bash functions">tar</code> <code class="bash plain">cvfz data.</code><code class="bash functions">tar</code><code class="bash plain">.gz data &gt; </code><code class="bash plain">/dev/null</code><code class="bash plain">&amp;</code>
</div>
                                                                <div class="line number224 index223 alt1">
                                                                         </div>
                                                                <div class="line number225 index224 alt2">
                                                                        <code class="bash plain">\&lt;...\&gt; 单字边界</code>
</div>
                                                                <div class="line number226 index225 alt1">
                                                                        <code class="bash plain">这组符号在规则表达式中,被定义为</code><code class="bash string">"边界"</code><code class="bash plain">的意思。譬如,当我们想找寻 the 这个单字时,如果我们用</code>
</div>
                                                                <div class="line number227 index226 alt2">
                                                                        <code class="bash functions">grep</code> <code class="bash plain">the FileA</code>
</div>
                                                                <div class="line number228 index227 alt1">
                                                                        <code class="bash plain">你将会发现,像 there 这类的单字,也会被当成是匹配的单字。因为 the 正巧是 there的一部份。如果我们要必免这种情况,就得加上 </code><code class="bash string">"边界"</code> <code class="bash plain">的符号</code>
</div>
                                                                <div class="line number229 index228 alt2">
                                                                        <code class="bash functions">grep</code> <code class="bash plain">'\' FileA</code>
</div>
                                                                <div class="line number230 index229 alt1">
                                                                         </div>
                                                                <div class="line number231 index230 alt2">
                                                                        <code class="bash plain">+ 加号 (plus)</code>
</div>
                                                                <div class="line number232 index231 alt1">
                                                                        <code class="bash plain">在运算式中,她用来表示 </code><code class="bash string">"加法"</code><code class="bash plain">。</code>
</div>
                                                                <div class="line number233 index232 alt2">
                                                                        <code class="bash functions">expr</code> <code class="bash plain">1 + 2 + 3</code>
</div>
                                                                <div class="line number234 index233 alt1">
                                                                        <code class="bash plain">此外在规则表达式中,用来表示</code><code class="bash string">"很多个"</code><code class="bash plain">的前面字元的意思。</code>
</div>
                                                                <div class="line number235 index234 alt2">
                                                                        <code class="bash comments"># grep '10\+9' fileB109100910000910000931010009#这个符号在使用时,前面必须加上escape 字元。</code>
</div>
                                                                <div class="line number236 index235 alt1">
                                                                         </div>
                                                                <div class="line number237 index236 alt2">
                                                                        <code class="bash plain">- 减号 (dash)</code>
</div>
                                                                <div class="line number238 index237 alt1">
                                                                        <code class="bash plain">在运算式中,她用来表示 </code><code class="bash string">"减法"</code><code class="bash plain">。</code>
</div>
                                                                <div class="line number239 index238 alt2">
                                                                        <code class="bash functions">expr</code> <code class="bash plain">10 - 2</code>
</div>
                                                                <div class="line number240 index239 alt1">
                                                                        <code class="bash plain">此外也是系统指令的选项符号。</code>
</div>
                                                                <div class="line number241 index240 alt2">
                                                                        <code class="bash functions">ls</code> <code class="bash plain">-</code><code class="bash functions">expr</code> <code class="bash plain">10 - 2</code>
</div>
                                                                <div class="line number242 index241 alt1">
                                                                        <code class="bash plain">在 GNU 指令中,如果单独使用 - 符号,不加任何该加的文件名称时,代表</code><code class="bash string">"标准输入"</code><code class="bash plain">的意思。这是 GNU指令的共通选项。譬如下例</code>
</div>
                                                                <div class="line number243 index242 alt2">
                                                                        <code class="bash functions">tar</code> <code class="bash plain">xpvf -</code>
</div>
                                                                <div class="line number244 index243 alt1">
                                                                        <code class="bash plain">这里的 - 符号,既代表从标准输入读取资料。</code>
</div>
                                                                <div class="line number245 index244 alt2">
                                                                        <code class="bash plain">不过,在 </code><code class="bash functions">cd</code> <code class="bash plain">指令中则比较特别</code>
</div>
                                                                <div class="line number246 index245 alt1">
                                                                        <code class="bash functions">cd</code> <code class="bash plain">-</code>
</div>
                                                                <div class="line number247 index246 alt2">
                                                                        <code class="bash plain">这代表变更工作目录到</code><code class="bash string">"上一次"</code><code class="bash plain">工作目录。</code>
</div>
                                                                <div class="line number248 index247 alt1">
                                                                         </div>
                                                                <div class="line number249 index248 alt2">
                                                                        <code class="bash plain">===================================================================================</code>
</div>
                                                                <div class="line number250 index249 alt1">
                                                                        <code class="bash plain">% 除法 (Modulo)</code>
</div>
                                                                <div class="line number251 index250 alt2">
                                                                        <code class="bash plain">在运算式中,用来表示 </code><code class="bash string">"除法"</code><code class="bash plain">。</code>
</div>
                                                                <div class="line number252 index251 alt1">
                                                                        <code class="bash functions">expr</code> <code class="bash plain">10 % 2</code>
</div>
                                                                <div class="line number253 index252 alt2">
                                                                        <code class="bash plain">此外,也被运用在关于变量的规则表达式当中的下列</code>
</div>
                                                                <div class="line number254 index253 alt1">
                                                                        <code class="bash plain">${parameter%word}${parameter%%word}</code>
</div>
                                                                <div class="line number255 index254 alt2">
                                                                        <code class="bash plain">一个 % 表示最短的 word 匹配,两个表示最长的 word 匹配。</code>
</div>
                                                                <div class="line number256 index255 alt1">
                                                                         </div>
                                                                <div class="line number257 index256 alt2">
                                                                        <code class="bash plain">===============================================================================</code>
</div>
                                                                <div class="line number258 index257 alt1">
                                                                        <code class="bash plain">= 等号 (Equals)</code>
</div>
                                                                <div class="line number259 index258 alt2">
                                                                        <code class="bash plain">常在设定变数时看到的符号。</code>
</div>
                                                                <div class="line number260 index259 alt1">
                                                                        <code class="bash plain">vara=123echo </code><code class="bash string">" vara = $vara"</code>
</div>
                                                                <div class="line number261 index260 alt2">
                                                                        <code class="bash plain">或者像是 PATH 的设定,甚至应用在运算或判断式等此类用途上。</code>
</div>
                                                                <div class="line number262 index261 alt1">
                                                                         </div>
                                                                <div class="line number263 index262 alt2">
                                                                        <code class="bash plain">== 等号 (Equals)</code>
</div>
                                                                <div class="line number264 index263 alt1">
                                                                        <code class="bash plain">常在条件判断式中看到,代表 </code><code class="bash string">"等于"</code> <code class="bash plain">的意思。</code>
</div>
                                                                <div class="line number265 index264 alt2">
                                                                        <code class="bash keyword">if</code> <code class="bash plain">[ $vara == $varb ]</code>
</div>
                                                                <div class="line number266 index265 alt1">
                                                                        <code class="bash plain">...下略</code>
</div>
                                                                <div class="line number267 index266 alt2">
                                                                         </div>
                                                                <div class="line number268 index267 alt1">
                                                                        <code class="bash plain">!= 不等于</code>
</div>
                                                                <div class="line number269 index268 alt2">
                                                                        <code class="bash plain">常在条件判断式中看到,代表 </code><code class="bash string">"不等于"</code> <code class="bash plain">的意思。</code>
</div>
                                                                <div class="line number270 index269 alt1">
                                                                        <code class="bash keyword">if</code> <code class="bash plain">[ $vara != $varb ]</code>
</div>
                                                                <div class="line number271 index270 alt2">
                                                                        <code class="bash plain">...下略</code>
</div>
                                                                <div class="line number272 index271 alt1">
                                                                         </div>
                                                                <div class="line number273 index272 alt2">
                                                                        <code class="bash plain">^</code>
</div>
                                                                <div class="line number274 index273 alt1">
                                                                        <code class="bash plain">这个符号在规则表达式中,代表行的 </code><code class="bash string">"开头"</code> <code class="bash plain">位置,在[]中也与</code><code class="bash string">"!"</code><code class="bash plain">(叹号)一样表示“非”</code>
</div>
                                                                <div class="line number275 index274 alt2">
                                                                         </div>
                                                                <div class="line number276 index275 alt1">
                                                                        <code class="bash plain">============================================================================</code>
</div>
                                                                <div class="line number277 index276 alt2">
                                                                        <code class="bash plain">输出/输入重导向</code>
</div>
                                                                <div class="line number278 index277 alt1">
                                                                        <code class="bash plain">&gt;  &gt;&gt; &lt; &lt;&lt; :&gt; &amp;&gt; 2&amp;&gt; 2&lt;&gt;&gt;&amp; &gt;&amp;2 </code>
</div>
                                                                <div class="line number279 index278 alt2">
                                                                         </div>
                                                                <div class="line number280 index279 alt1">
                                                                        <code class="bash plain">文件描述符(File Descriptor),用一个数字(通常为0-9)来表示一个文件。</code>
</div>
                                                                <div class="line number281 index280 alt2">
                                                                        <code class="bash plain">常用的文件描述符如下:</code>
</div>
                                                                <div class="line number282 index281 alt1">
                                                                        <code class="bash plain">文件描述符   名称   常用缩写  默认值</code>
</div>
                                                                <div class="line number283 index282 alt2">
                                                                        <code class="bash spaces">  </code><code class="bash plain">0    标准输入  stdin   键盘</code>
</div>
                                                                <div class="line number284 index283 alt1">
                                                                        <code class="bash spaces">  </code><code class="bash plain">1    标准输出  stdout   屏幕</code>
</div>
                                                                <div class="line number285 index284 alt2">
                                                                        <code class="bash spaces">  </code><code class="bash plain">2   标准错误输出 stderr   屏幕</code>
</div>
                                                                <div class="line number286 index285 alt1">
                                                                        <code class="bash plain">我们在简单地用&lt;或&gt;时,相当于使用 0&lt; 或 1&gt;(下面会详细介绍)。</code>
</div>
                                                                <div class="line number287 index286 alt2">
                                                                        <code class="bash plain">* cmd &gt; </code><code class="bash functions">file</code>
</div>
                                                                <div class="line number288 index287 alt1">
                                                                        <code class="bash plain">把cmd命令的输出重定向到文件</code><code class="bash functions">file</code><code class="bash plain">中。如果</code><code class="bash functions">file</code><code class="bash plain">已经存在,则清空原有文件,使用</code><code class="bash functions">bash</code><code class="bash plain">的noclobber选项可以防止复盖原有文件。</code>
</div>
                                                                <div class="line number289 index288 alt2">
                                                                        <code class="bash plain">* cmd &gt;&gt; </code><code class="bash functions">file</code>
</div>
                                                                <div class="line number290 index289 alt1">
                                                                        <code class="bash plain">把cmd命令的输出重定向到文件</code><code class="bash functions">file</code><code class="bash plain">中,如果</code><code class="bash functions">file</code><code class="bash plain">已经存在,则把信息加在原有文件後面。</code>
</div>
                                                                <div class="line number291 index290 alt2">
                                                                        <code class="bash plain">* cmd &lt; </code><code class="bash functions">file</code>
</div>
                                                                <div class="line number292 index291 alt1">
                                                                        <code class="bash plain">使cmd命令从</code><code class="bash functions">file</code><code class="bash plain">读入</code>
</div>
                                                                <div class="line number293 index292 alt2">
                                                                        <code class="bash plain">* cmd &lt;&lt; text</code>
</div>
                                                                <div class="line number294 index293 alt1">
                                                                        <code class="bash plain">从命令行读取输入,直到一个与text相同的行结束。除非使用引号把输入括起来,此模式将对输入内容进行shell变量替换。如果使用&lt;&lt;- ,则会忽略接下来输入行首的tab,结束行也可以是一堆tab再加上一个与text相同的内容,可以参考後面的例子。</code>
</div>
                                                                <div class="line number295 index294 alt2">
                                                                        <code class="bash plain">* cmd &lt;&lt;&lt; word</code>
</div>
                                                                <div class="line number296 index295 alt1">
                                                                        <code class="bash plain">把word(而不是文件word)和後面的换行作为输入提供给cmd。</code>
</div>
                                                                <div class="line number297 index296 alt2">
                                                                        <code class="bash plain">* cmd &lt;&gt; </code><code class="bash functions">file</code>
</div>
                                                                <div class="line number298 index297 alt1">
                                                                        <code class="bash plain">以读写模式把文件</code><code class="bash functions">file</code><code class="bash plain">重定向到输入,文件</code><code class="bash functions">file</code><code class="bash plain">不会被破坏。仅当应用程序利用了这一特性时,它才是有意义的。</code>
</div>
                                                                <div class="line number299 index298 alt2">
                                                                        <code class="bash plain">* cmd &gt;| </code><code class="bash functions">file</code>
</div>
                                                                <div class="line number300 index299 alt1">
                                                                        <code class="bash plain">功能同&gt;,但即便在设置了noclobber时也会复盖</code><code class="bash functions">file</code><code class="bash plain">文件,注意用的是|而非一些书中说的!,目前仅在csh中仍沿用&gt;!实现这一功能。</code>
</div>
                                                                <div class="line number301 index300 alt2">
                                                                        <code class="bash plain">: &gt; filename  把文件</code><code class="bash string">"filename"</code><code class="bash plain">截断为0长度.</code><code class="bash comments"># 如果文件不存在, 那么就创建一个0长度的文件(与'touch'的效果相同).</code>
</div>
                                                                <div class="line number302 index301 alt1">
                                                                        <code class="bash plain">cmd &gt;&amp;n把输出送到文件描述符n</code>
</div>
                                                                <div class="line number303 index302 alt2">
                                                                        <code class="bash plain">cmd m&gt;&amp;n 把输出 到文件符m的信息重定向到文件描述符n</code>
</div>
                                                                <div class="line number304 index303 alt1">
                                                                        <code class="bash plain">cmd &gt;&amp;-关闭标准输出</code>
</div>
                                                                <div class="line number305 index304 alt2">
                                                                        <code class="bash plain">cmd &lt;&amp;n 输入来自文件描述符n</code>
</div>
                                                                <div class="line number306 index305 alt1">
                                                                        <code class="bash plain">cmd m&lt;&amp;n m来自文件描述各个n</code>
</div>
                                                                <div class="line number307 index306 alt2">
                                                                        <code class="bash plain">cmd &lt;&amp;-关闭标准输入</code>
</div>
                                                                <div class="line number308 index307 alt1">
                                                                        <code class="bash plain">cmd &lt;&amp;n-移动输入文件描述符n而非复制它。(需要解释)</code>
</div>
                                                                <div class="line number309 index308 alt2">
                                                                        <code class="bash plain">cmd &gt;&amp;n-移动输出文件描述符 n而非复制它。(需要解释)</code>
</div>
                                                                <div class="line number310 index309 alt1">
                                                                        <code class="bash plain">注意: &gt;&amp;实际上复制了文件描述符,这使得cmd &gt; </code><code class="bash functions">file</code> <code class="bash plain">2&gt;&amp;1与cmd 2&gt;&amp;1 &gt;</code><code class="bash functions">file</code><code class="bash plain">的效果不一样。</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
        <div class="codetool" id="codetool">
                <div class="code_n">
                        <textarea></textarea>
</div>
        </div>
</div>
<p>
        <span><strong>总结</strong></span></p>
<p>
        以上所述是小编给大家介绍的linux特殊字符及其作用大全,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!</p>
<p>
        原文链接:http://www.cnblogs.com/pingsheng/p/8696814.html</p>
頁: [1]
查看完整版本: linux特殊字符及其作用大全