⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ch05_02.htm

📁 unix基础教程
💻 HTM
📖 第 1 页 / 共 2 页
字号:
<html><head><title>Syntax (UNIX in a Nutshell: System V Edition)</title><link rel="stylesheet" type="text/css" href="../style/style1.css" /><meta name="DC.Creator" content="Arnold Robbins" /><meta name="DC.Format" content="text/xml" scheme="MIME" /><meta name="DC.Language" content="en-US" /><meta name="DC.Publisher" content="O'Reilly &amp; Associates, Inc." /><meta name="DC.Source" scheme="ISBN" content="1-56592-427-4" /><meta name="DC.Subject.Keyword" content="stuff" /><meta name="DC.Title" content="UNIX in a Nutshell: System V Edition" /><meta name="DC.Type" content="Text.Monograph" /></head><body bgcolor="#ffffff"><img src="gifs/smbanner.gif" usemap="#banner-map" border="0" alt="Book Home" /><map name="banner-map"><area shape="rect" coords="1,-2,616,66" href="index.htm" alt="Book Title" /><area shape="rect" coords="629,-11,726,25" href="jobjects/fsearch.htm" alt="Search this book" /></map><div class="navbar"><table width="684" border="0"><tr><td align="left" valign="top" width="228"><a href="ch05_01.htm"><img src="../gifs/txtpreva.gif" alt="Previous" border="0" /></a></td><td align="center" valign="top" width="228" /><td align="right" valign="top" width="228"><a href="ch05_03.htm"><img src="../gifs/txtnexta.gif" alt="Next" border="0" /></a></td></tr></table></div><h2 class="sect1">5.2. Syntax</h2><p>This section describes the many symbols peculiar tothe C shell. The topics are arranged as follows:</p><ul><li><p>Special files </p></li><li><p>Filename metacharacters </p></li><li><p>Quoting</p></li><li><p>Command forms</p></li><li><p>Redirection forms</p></li></ul><a name="unut-ch-5-sect-2.1" /><div class="sect2"><h3 class="sect2">5.2.1. Special Files</h3><p><a name="IXT-5-122907" /><a name="IXT-5-122908" /><a name="IXT-5-122909" /><a name="IXT-5-122910" /></p><table border="1" cellpadding="3"><tr><td><tt class="literal">~/.cshrc</tt></td><td>Executed at each instance of shell invocation.</td></tr><tr><td><tt class="literal">~/.login</tt></td><td>Executed by login shell after <tt class="literal">.cshrc</tt> at login.</td></tr><tr><td><tt class="literal">~/.logout</tt></td><td>Executed by login shell at logout.</td></tr><tr><td><tt class="literal">~/.history</tt></td><td>History list saved from previous login.</td></tr><tr><td><tt class="literal">/etc/passwd</tt></td><td><p>Source of home directories for <tt class="literal">~</tt><em class="emphasis">name</em> abbreviations. (May come from NIS or NIS+ instead.)</p></td></tr></table><p><a name="IXT-5-122911" /><a name="IXT-5-122912" /></div><a name="unut-ch-5-sect-2.2" /><div class="sect2"><h3 class="sect2">5.2.2. Filename Metacharacters</h3><p><a name="IXT-5-122913" /><a name="IXT-5-122914" /><a name="IXT-5-122915" /><a name="IXT-5-122916" /></p><table border="1" cellpadding="3"><tr><th><em class="emphasis">Metacharacter</em></th><th><em class="emphasis">Description</em></th></tr><tr><td><tt class="literal">*</tt></td><td>Match any string of zero or more characters.</td></tr><tr><td><tt class="literal">?</tt></td><td>Match any single character.</td></tr><tr><td><tt class="literal">[</tt><em class="replaceable"><tt>abc</tt></em>...<tt class="literal">]</tt></td><td><p>Match any one of the enclosed characters; a hyphen can be used tospecify a range (e.g., a&#8211;z, A&#8211;Z, 0&#8211;9).</p></td></tr><tr><td><tt class="literal">{</tt><em class="replaceable"><tt>abc</em><tt class="literal">,</tt><em class="replaceable">xxx</tt></em><tt class="literal">,</tt>...<tt class="literal">}</tt></td><td><p>Expand each comma-separated string inside braces.The strings need not match actual filenames.</p></td></tr><tr><td><tt class="literal">~</tt></td><td>Home directory for the current user.</td></tr><tr><td><tt class="literal">~</tt><em class="replaceable"><tt>name</em></td><td>Home directory of user <em class="emphasis">name</tt></em>.</td></tr></table><p><a name="unut-ch-5-sect-2.2.1" /><div class="sect3"><h3 class="sect3">5.2.2.1. Examples</h3><blockquote><pre class="code">% <tt class="userinput"><b>ls new*</b></tt>         <i class="lineannotation">Match new and new.1</i>% <tt class="userinput"><b>cat ch?</b></tt>         <i class="lineannotation">Match ch9 but not ch10</i>% <tt class="userinput"><b>vi [D-R]*</b></tt>       <i class="lineannotation">Match files that begin with uppercase D through R</i>% <tt class="userinput"><b>ls {ch,app}?</b></tt>    <i class="lineannotation">Expand, then match ch1, ch2, app1, app2</i>% <tt class="userinput"><b>mv info{,.old}</b></tt>  <i class="lineannotation">Expands to mv info info.old</i>% <tt class="userinput"><b>cd ~tom</b></tt>         <i class="lineannotation">Change to tom's home directory</i></pre></blockquote></div></div><a name="unut-ch-5-sect-2.3" /><div class="sect2"><h3 class="sect2">5.2.3. Quoting</h3><p><a name="IXT-5-122917" /><a name="IXT-5-122918" />Quoting disables a character's special meaning andallows it to be used literally, as itself.The characters in the following table have special meaning to the C shell.</p><table border="1" cellpadding="3"><tr><th><em class="emphasis">Character</em></th><th><em class="emphasis">Meaning</em></th></tr><tr><td><tt class="literal">;</tt></td><td>Command separator</td></tr><tr><td><tt class="literal">&amp;</tt></td><td>Background execution</td></tr><tr><td><tt class="literal">( )</tt></td><td>Command grouping</td></tr><tr><td><tt class="literal">|</tt></td><td>Pipe</td></tr><tr><td><tt class="literal">* ? [ ] ~</tt></td><td>Filename metacharacters</td></tr><tr><td><tt class="literal">{ }</tt></td><td><p>String expansion characters;usually don't require quoting</p></td></tr><tr><td><tt class="literal">&lt; &gt; &amp; !</tt></td><td>Redirection symbols</td></tr><tr><td><tt class="literal">! ^</tt></td><td>History substitution, quick substitution</td></tr><tr><td><tt class="literal">" ' \</tt></td><td>Used in quoting other characters<a name="IXT-5-122919" /><a name="IXT-5-122920" /></td></tr><tr><td><tt class="literal">&#8216;</tt></td><td>Command substitution</td></tr><tr><td><tt class="literal">$</tt></td><td>Variable substitution</td></tr><tr><td><tt class="literal">space tab newline</tt></td><td>Word separators</td></tr></table><p><p>These characters can be used for quoting:</p><dl><dt><tt class="literal">"&#160;"</tt></dt><dd>Everything between <tt class="literal">"</tt> and <tt class="literal">"</tt> istaken literally, except forthe following characters that keep their special meaning:</p><dl><dt><tt class="literal">$</tt></dt><dd>Variable substitution will occur.</p></dd><dt><tt class="literal">&#8216;</tt></dt><dd>Command substitution will occur.</p></dd><dt><tt class="literal">"</tt></dt><dd>This marks the end of the double quote.</p></dd><dt><tt class="literal">\</tt></dt><dd>Escape next character.</p></dd><dt><tt class="literal">!</tt></dt><dd>The history character.</p></dd><dt><tt class="literal">newline</tt></dt><dd>The newline character.</p></dd></dl></dd><dt><tt class="literal">'&#160;'</tt></dt><dd>Everything between <tt class="literal">'</tt> and <tt class="literal">'</tt>is taken literally except for <tt class="literal">!</tt> (history) and another<tt class="literal">'</tt>, and newline.</p></dd><dt><tt class="literal">\</tt></dt><dd>The character following a <tt class="literal">\</tt> is taken literally.Use within <tt class="literal">""</tt> to escape <tt class="literal">"</tt>,<tt class="literal">$</tt>, <tt class="literal">&#8216;</tt>, and newline.Use within <tt class="literal">''</tt> to escape newlines. Often used to escape itself, spaces, or newlines.Always needed to escape a history character (usually <tt class="literal">!</tt>).</p></dd></dl><a name="unut-ch-5-sect-2.3.1" /><div class="sect3"><h3 class="sect3">5.2.3.1. Examples</h3><blockquote><pre class="code">% <tt class="userinput"><b>echo 'Single quotes "protect" double quotes'</b></tt>Single quotes "protect" double quotes% <tt class="userinput"><b>echo "Don't double quotes protect single quotes too?"</b></tt>Don't double quotes protect single quotes too?% <tt class="userinput"><b>echo "You have `ls|wc -l` files in `pwd`"</b></tt>You have       43 files in /home/bob% <tt class="userinput"><b>echo The value of \$x is $x</b></tt>The value of $x is 100</pre></blockquote>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -