<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Shell on Even - A super concise theme for Hugo</title>
    <link>http://localhost:1313/tags/shell/</link>
    <description>Recent content in Shell on Even - A super concise theme for Hugo</description>
    <generator>Hugo</generator>
    <language>en</language>
    <lastBuildDate>Sun, 02 Jul 2023 00:00:00 +0000</lastBuildDate>
    <atom:link href="http://localhost:1313/tags/shell/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>常用Shell</title>
      <link>http://localhost:1313/posts/workspace/01-tech/shell/%E5%B8%B8%E7%94%A8shell/</link>
      <pubDate>Sun, 02 Jul 2023 00:00:00 +0000</pubDate>
      <guid>http://localhost:1313/posts/workspace/01-tech/shell/%E5%B8%B8%E7%94%A8shell/</guid>
      <description>&lt;blockquote&gt;&#xA;&lt;p&gt;记录一些常用的shell，便于使用&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;h1 id=&#34;基本语法篇&#34;&gt;基本语法篇&lt;/h1&gt;&#xA;&lt;h2 id=&#34;条件判断&#34;&gt;条件判断&lt;/h2&gt;&#xA;&lt;p&gt;首先，包裹条件的中括号有两种：&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;code&gt;[]&lt;/code&gt; 更通用&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;[[]]&lt;/code&gt; 更强大，是一种bash语法&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;两者的区别：&lt;/p&gt;&#xA;&lt;table&gt;&#xA;  &lt;thead&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;th&gt;特点&lt;/th&gt;&#xA;          &lt;th&gt;单中括号 &lt;code&gt;[ ]&lt;/code&gt;&lt;/th&gt;&#xA;          &lt;th&gt;双中括号 &lt;code&gt;[[ ]]&lt;/code&gt;&lt;/th&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/thead&gt;&#xA;  &lt;tbody&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;逻辑关系&lt;/td&gt;&#xA;          &lt;td&gt;使用标准的POSIX语法&lt;/td&gt;&#xA;          &lt;td&gt;使用扩展的Bash语法&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;字符串比较&lt;/td&gt;&#xA;          &lt;td&gt;使用&lt;code&gt;=&lt;/code&gt; (&lt;code&gt;==&lt;/code&gt;也可以)和 &lt;code&gt;!=&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td&gt;可以使用&lt;code&gt;==&lt;/code&gt; 和 &lt;code&gt;!=&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;逻辑运算符&lt;/td&gt;&#xA;          &lt;td&gt;使用&lt;code&gt;-a&lt;/code&gt; (and) 和 &lt;code&gt;-o&lt;/code&gt; (or)&lt;/td&gt;&#xA;          &lt;td&gt;可以使用&lt;code&gt;&amp;amp;&amp;amp;&lt;/code&gt; (and) 和 &lt;code&gt;||&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;引用变量&lt;/td&gt;&#xA;          &lt;td&gt;需要使用引号 &lt;code&gt;&amp;quot;variable&amp;quot;&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td&gt;可以直接使用变量 &lt;code&gt;variable&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;模式匹配&lt;/td&gt;&#xA;          &lt;td&gt;需要使用&lt;code&gt;*&lt;/code&gt;进行通配符匹配&lt;/td&gt;&#xA;          &lt;td&gt;可以使用&lt;code&gt;*&lt;/code&gt;、&lt;code&gt;?&lt;/code&gt;、&lt;code&gt;[ ]&lt;/code&gt;进行模式匹配&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;数值比较&lt;/td&gt;&#xA;          &lt;td&gt;使用&lt;code&gt;-eq&lt;/code&gt;, &lt;code&gt;-ne&lt;/code&gt;, 等&lt;/td&gt;&#xA;          &lt;td&gt;同样支持&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;文件测试&lt;/td&gt;&#xA;          &lt;td&gt;使用&lt;code&gt;-f&lt;/code&gt;, &lt;code&gt;-d&lt;/code&gt;, 等&lt;/td&gt;&#xA;          &lt;td&gt;同样支持&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;嵌套&lt;/td&gt;&#xA;          &lt;td&gt;可以嵌套使用&lt;/td&gt;&#xA;          &lt;td&gt;可以更灵活地嵌套使用&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;p&gt;对于引用变量项，如果变量包含空格或特殊字符，单中括号不会识别，也就是无法这些当成包含在变量内的值，因此需要用引号。但是双中括号无需引号即可识别。&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
