<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>DevMemo – cheatsheet</title><link>https://devmemo.gitlab.io/categories/cheatsheet/</link><description>Recent content in cheatsheet on DevMemo</description><generator>Hugo -- gohugo.io</generator><language>en</language><lastBuildDate>Fri, 20 Jan 2023 22:42:06 -0800</lastBuildDate><atom:link href="https://devmemo.gitlab.io/categories/cheatsheet/index.xml" rel="self" type="application/rss+xml"/><item><title>Cheatsheets: Cheatsheets</title><link>https://devmemo.gitlab.io/cheatsheets/</link><pubDate>Fri, 20 Jan 2023 22:42:06 -0800</pubDate><guid>https://devmemo.gitlab.io/cheatsheets/</guid><description/></item><item><title>Cheatsheets: Ansible Cheatsheet</title><link>https://devmemo.gitlab.io/cheatsheets/ansible/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://devmemo.gitlab.io/cheatsheets/ansible/</guid><description>
&lt;h2 id="install">Install&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Install ansible (for user).&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>python3 -m pip install --user ansible
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Upgrade ansible (for user).&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>python3 -m pip install --upgrade --user ansible
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Display ansible core version.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>ansible --version
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Display ansible version.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>python3 -m pip show ansible
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Unsnstall ansible.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>python3 -m pip uninstall ansible
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="inventory">Inventory&lt;/h2>
&lt;h3 id="hostini">Host.ini&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-txt" data-lang="txt">&lt;span style="display:flex;">&lt;span># Hosts in group &amp;#39;all&amp;#39;.
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>host1
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>host2
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span># Hosts in a group.
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>[group-name]
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>host1
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>host2
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span># Hosts in a group with variables defined.
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>[group-name]
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>host1 &amp;lt;var_1&amp;gt;=&amp;lt;value_1&amp;gt; &amp;lt;var_2&amp;gt;=&amp;lt;value_2&amp;gt; ... &amp;lt;var_n&amp;gt;=&amp;lt;value_n&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>host2 &amp;lt;var_1&amp;gt;=&amp;lt;value_1&amp;gt; &amp;lt;var_2&amp;gt;=&amp;lt;value_2&amp;gt; ... &amp;lt;var_n&amp;gt;=&amp;lt;value_n&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="host-variables">Host Variables&lt;/h3>
&lt;div class="sw-lg-table-container dark-scrollbar">
&lt;table class="sw-key-value-table" id="">
&lt;thead>
&lt;tr>
&lt;th>Variable Name&lt;/th>
&lt;th>Description&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>&lt;code>ansible_host&lt;/code>&lt;/td>
&lt;td>The name or the ip of the host to connect to. If none, the alias will be used.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>ansible_port&lt;/code>&lt;/td>
&lt;td>The port to connect, if not defined, port 12 will used.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>ansible_user&lt;/code>&lt;/td>
&lt;td>The user to use when connecting to the host&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>ansible_password&lt;/code>&lt;/td>
&lt;td>The password to use to authenticate to the host&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>ansible_ssh_private_key_file&lt;/code>&lt;/td>
&lt;td>Private key file used by ssh.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>ansible_ssh_common_args&lt;/code>&lt;/td>
&lt;td>This setting is always appended to the default command line for sftp, scp, and ssh.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>ansible_sftp_extra_args&lt;/code>&lt;/td>
&lt;td>This setting is always appended to the default sftp command line.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>ansible_scp_extra_args&lt;/code>&lt;/td>
&lt;td>This setting is always appended to the default scp command line.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>ansible_ssh_extra_args&lt;/code>&lt;/td>
&lt;td>This setting is always appended to the default ssh command line.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>ansible_ssh_pipelining&lt;/code>&lt;/td>
&lt;td>Determines whether or not to use SSH pipelining. This can override the pipelining setting in ansible.cfg.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>ansible_ssh_executable&lt;/code>&lt;/td>
&lt;td>This setting overrides the default behavior to use the system ssh. This can override the &lt;code>ssh_executable&lt;/code> setting in ansible.cfg.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>ansible_become&lt;/code>&lt;/td>
&lt;td>Equivalent to &lt;code>ansible_sudo or ansible_su&lt;/code>, allows to force privilege escalation&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>ansible_become_method&lt;/code>&lt;/td>
&lt;td>Allows to set privilege escalation method&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>ansible_become_user&lt;/code>&lt;/td>
&lt;td>Equivalent to &lt;code>ansible_sudo_user&lt;/code> or &lt;code>ansible_su_user&lt;/code>, allows to set the user you become through privilege escalation&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>ansible_become_password&lt;/code>&lt;/td>
&lt;td>Equivalent to &lt;code>ansible_sudo_password&lt;/code> or &lt;code>ansible_su_password&lt;/code>, allows you to set the privilege escalation password&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>ansible_become_exe&lt;/code>&lt;/td>
&lt;td>Equivalent to &lt;code>ansible_sudo_exe&lt;/code> or &lt;code>ansible_su_exe&lt;/code>, allows you to set the executable for the escalation method selected&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>ansible_become_flags&lt;/code>&lt;/td>
&lt;td>Equivalent to &lt;code>ansible_sudo_flags&lt;/code> or &lt;code>ansible_su_flags&lt;/code>, allows you to set the flags passed to the selected escalation method.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>ansible_shell_type&lt;/code>&lt;/td>
&lt;td>The shell type of the target system.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>ansible_python_interpreter&lt;/code>&lt;/td>
&lt;td>The target host python path.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>ansible_*_interpreter&lt;/code>&lt;/td>
&lt;td>Works for anything such as ruby or perl and works just like &lt;code>ansible_python_interpreter&lt;/code>. This replaces shebang of modules which will run on that host.&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/div>
&lt;h2 id="ansible-playbook">Ansible Playbook&lt;/h2>
&lt;h3 id="hello-world">Hello World&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-yml" data-lang="yml">&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">hosts&lt;/span>: &lt;span style="color:#ae81ff">all&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">tasks&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Print message&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">debug&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">msg&lt;/span>: &lt;span style="color:#ae81ff">Hello world!&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="privilege-escalation">Privilege Escalation&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-yml" data-lang="yml">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Activate privilege escalation for all tasks.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">hosts&lt;/span>: &lt;span style="color:#ae81ff">all&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">become&lt;/span>: &lt;span style="color:#66d9ef">yes&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">tasks&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Print message&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">debug&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">msg&lt;/span>: &lt;span style="color:#ae81ff">Hello world!&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Activate privilege escalation for a specific task.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">hosts&lt;/span>: &lt;span style="color:#ae81ff">all&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">tasks&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Print message&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">become&lt;/span>: &lt;span style="color:#66d9ef">yes&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">debug&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">msg&lt;/span>: &lt;span style="color:#ae81ff">Hello world!&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Run command with another user.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">hosts&lt;/span>: &lt;span style="color:#ae81ff">all&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">tasks&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Print message&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">become&lt;/span>: &lt;span style="color:#66d9ef">yes&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">become_user&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;another-user&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">debug&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">msg&lt;/span>: &lt;span style="color:#ae81ff">Hello world!&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="commonly-used-modules">Commonly Used Modules&lt;/h3>
&lt;h4 id="package">Package&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-yaml" data-lang="yaml">&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Install a package (state=present is optional)&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">apt&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;package-name&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">state&lt;/span>: &lt;span style="color:#ae81ff">present&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Remove a package&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">apt&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;package-name&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">state&lt;/span>: &lt;span style="color:#ae81ff">absent&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Install a list of packages&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">apt&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">pkg&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#ae81ff">&amp;lt;package1-name&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#ae81ff">&amp;lt;package2-name&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Upgrade all packages to the latest version&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">apt&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#e6db74">&amp;#34;*&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">state&lt;/span>: &lt;span style="color:#ae81ff">latest&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Update all packages to the latest version&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">apt&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">upgrade&lt;/span>: &lt;span style="color:#ae81ff">dist&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Run the equivalent of &amp;#34;apt-get update&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">apt&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">update_cache&lt;/span>: &lt;span style="color:#66d9ef">yes&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Install a .deb package&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">apt&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">deb&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;deb-filepath&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Install the build dependencies for a package&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">apt&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">pkg&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;package-name&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">state&lt;/span>: &lt;span style="color:#ae81ff">build-dep&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Install a .deb package from the internet&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">apt&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">deb&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;deb-url&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Remove useless packages from the cache&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">apt&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">autoclean&lt;/span>: &lt;span style="color:#66d9ef">yes&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Remove dependencies that are no longer required&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">apt&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">autoremove&lt;/span>: &lt;span style="color:#66d9ef">yes&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h4 id="service">Service&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-yaml" data-lang="yaml">&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Start service &amp;lt;service-name&amp;gt;, if not started&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">service&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;service-name&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">state&lt;/span>: &lt;span style="color:#ae81ff">started&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Stop service &amp;lt;service-name&amp;gt;, if started&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">service&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;service-name&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">state&lt;/span>: &lt;span style="color:#ae81ff">stopped&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Restart service &amp;lt;service-name&amp;gt;, in all cases&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">service&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;service-name&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">state&lt;/span>: &lt;span style="color:#ae81ff">restarted&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Reload service &amp;lt;service-name&amp;gt;, in all cases&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">service&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;service-name&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">state&lt;/span>: &lt;span style="color:#ae81ff">reloaded&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Enable service &amp;lt;service-name&amp;gt;, and not touch the state&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">service&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;service-name&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">enabled&lt;/span>: &lt;span style="color:#66d9ef">yes&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h4 id="file-basics">File Basics&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-yaml" data-lang="yaml">&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Change file ownership, group and permissions&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">file&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">path&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;filepath&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">owner&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;username&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">group&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;group-name&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">mode&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;file-mode&amp;gt;&lt;/span> &lt;span style="color:#75715e"># file-mode can be numbers like 0644, or symbols like u=rw,g=r,o=r, or symbol changes u+rw,g-wx,o-rwx.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Create a symbolic link&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">file&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">src&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;filepath-to-link-to&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">dest&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;symlink-path&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">owner&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;username&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">group&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;group-name&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">state&lt;/span>: &lt;span style="color:#ae81ff">link&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Create two hard links&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">file&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">src&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;filepath-to-link-to&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">dest&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;symlink-path&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">state&lt;/span>: &lt;span style="color:#ae81ff">hard&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Create an empty file.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">file&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">path&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;filepath&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">state&lt;/span>: &lt;span style="color:#ae81ff">touch&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">mode&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;file-mode&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Create a directory if it does not exist&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">file&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">path&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;dir-path&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">state&lt;/span>: &lt;span style="color:#ae81ff">directory&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">mode&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;file-mode&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Recursively change ownership of a directory&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">file&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">path&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;dir-path&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">owner&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;username&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">group&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;group-name&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">state&lt;/span>: &lt;span style="color:#ae81ff">directory&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">recurse&lt;/span>: &lt;span style="color:#66d9ef">yes&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Remove a file&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">file&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">path&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;filepath&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">state&lt;/span>: &lt;span style="color:#ae81ff">absent&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Recursively remove directory&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">file&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">path&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;dir-path&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">state&lt;/span>: &lt;span style="color:#ae81ff">absent&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h4 id="file-copy">File Copy&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-yaml" data-lang="yaml">&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Copy file with owner and permissions.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">copy&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">src&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;src-filepath&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">dest&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;dst-filepath&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">owner&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;username&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">group&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;group-name&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">mode&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;file-mode&amp;gt;&lt;/span> &lt;span style="color:#75715e"># file-mode can be numbers like 0644, or symbols like u=rw,g=r,o=r, or symbol changes u+rw,g-wx,o-rwx.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Copy a file, backing up the original one if it differs from the copied version&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">copy&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">src&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;src-filepath&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">dest&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;dst-filepath&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">owner&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;username&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">group&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;group-name&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">mode&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;file-mode&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">backup&lt;/span>: &lt;span style="color:#66d9ef">yes&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Copy a new &amp;#34;sudoers&amp;#34; file into place, after passing validation with visudo&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">copy&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">src&lt;/span>: &lt;span style="color:#ae81ff">/mine/sudoers&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">dest&lt;/span>: &lt;span style="color:#ae81ff">/etc/sudoers&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">validate&lt;/span>: &lt;span style="color:#ae81ff">/usr/sbin/visudo -csf %s&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Copy a &amp;#34;sudoers&amp;#34; file on the remote machine for editing&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">copy&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">src&lt;/span>: &lt;span style="color:#ae81ff">/etc/sudoers&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">dest&lt;/span>: &lt;span style="color:#ae81ff">/etc/sudoers.edit&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">remote_src&lt;/span>: &lt;span style="color:#66d9ef">yes&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">validate&lt;/span>: &lt;span style="color:#ae81ff">/usr/sbin/visudo -csf %s&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Copy using inline content&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">copy&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">content&lt;/span>: &lt;span style="color:#e6db74">&amp;#39;this is the file content&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">dest&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;filepath&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h4 id="lineinfile">LineInFile&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-yaml" data-lang="yaml">&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">If a line matches &amp;lt;line-pattern&amp;gt;, replace it with &amp;lt;line&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">lineinfile&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">path&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;filepath&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">regexp&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;line-pattern&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">line&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;line&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">If a line matches &amp;lt;line-pattern&amp;gt;, remove it&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">lineinfile&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">path&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;filepath&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">regexp&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;line-pattern&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">state&lt;/span>: &lt;span style="color:#ae81ff">absent&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">If a line matches &amp;lt;line-pattern&amp;gt;, replace it with &amp;lt;line&amp;gt; and place it after the line &amp;lt;insert-line-pattern&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">lineinfile&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">path&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;filepath&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">regexp&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;line-pattern&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">insertafter&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;insert-line-pattern&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">line&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;line&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">If a line matches &amp;lt;line-pattern&amp;gt;, replace it with &amp;lt;line&amp;gt; and place it before the line &amp;lt;insert-line-pattern&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">lineinfile&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">path&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;filepath&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">regexp&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;line-pattern&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">insertbefore&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;insert-line-pattern&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">line&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;line&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Add &amp;lt;line&amp;gt; to a file. Create the file if it doesn&amp;#39;t exist&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">lineinfile&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">path&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;filepath&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">line&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;line&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">create&lt;/span>: &lt;span style="color:#66d9ef">yes&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h4 id="commands">Commands&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-yaml" data-lang="yaml">&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Execute a command, and send the output to a variable&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">command&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;command&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">register&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;var-name&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Run command if filepath does not exist&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">command&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;command&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">args&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">creates&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;filepath&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Run command in a specific directory&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">command&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;command&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">args&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">chdir&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;dir&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h4 id="git">Git&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-yaml" data-lang="yaml">&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">git&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Check out a git repo to a specific version (which can be HEAD, a branch, or a tag)&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">repo&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;git-repo-url&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">dest&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;checkout-dir-path&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">version&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;version&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">git&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Ensure a git repo checkout exists.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">repo&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;git-repo-url&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">dest&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;checkout-dir-path&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">update&lt;/span>: &lt;span style="color:#66d9ef">no&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h4 id="user">User&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-yaml" data-lang="yaml">&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Add a specific user with a uid (e.g., 1040)&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">user&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;username&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">comment&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;comment&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">uid&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;uid&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">group&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;group&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Add a uesr and append groups to the user&amp;#39;s groups&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">user&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;username&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">groups&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;group_1&amp;gt;,&amp;lt;group_2&amp;gt;,...,&amp;lt;group_n&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">append&lt;/span>: &lt;span style="color:#66d9ef">yes&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Remove a user&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">user&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;username&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">state&lt;/span>: &lt;span style="color:#ae81ff">absent&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">remove&lt;/span>: &lt;span style="color:#66d9ef">yes&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Add a user with an expire time&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">user&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;username&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">groups&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;group_1&amp;gt;,&amp;lt;group_2&amp;gt;,...,&amp;lt;group_n&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">expires&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;expire-timestamp&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Remove user&amp;#39;s expire time&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">user&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;username&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">expires&lt;/span>: -&lt;span style="color:#ae81ff">1&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h4 id="debug">Debug&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-yaml" data-lang="yaml">&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">Print hostname and uuid&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">debug&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">msg&lt;/span>: &lt;span style="color:#ae81ff">System {{ inventory_hostname }} has uuid {{ ansible_product_uuid }}&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">print hostname and uuid conditionally&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">debug&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">msg&lt;/span>: &lt;span style="color:#ae81ff">System {{ inventory_hostname }} has gateway {{ ansible_default_ipv4.gateway }}&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">when&lt;/span>: &lt;span style="color:#ae81ff">ansible_default_ipv4.gateway is defined&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="all-modules">All Modules&lt;/h3>
&lt;p>A list of all modules can be found &lt;a href="https://docs.ansible.com/ansible/2.9/modules/list_of_all_modules.html">here&lt;/a>.&lt;/p>
&lt;h2 id="commands-1">Commands&lt;/h2>
&lt;h3 id="run-command-for-a-single-module">Run Command For A Single Module&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Ping hosts in group all.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>ansible all -m ping
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Ping hosts in group all with a given hosts.ini.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>ansible -i hosts.ini all -m ping
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Ping hosts in a group with a given hosts.ini.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>ansible -i hosts.ini &amp;lt;group-name&amp;gt; -m ping
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Run a task with a specific module.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>ansible -i hosts.ini &amp;lt;group-name&amp;gt; -m &amp;lt;module-name&amp;gt; -a &lt;span style="color:#e6db74">&amp;#34;&amp;lt;module-arg-1-key&amp;gt;=&amp;lt;module-arg-1-value&amp;gt; &amp;lt;module-arg-2-key&amp;gt;=&amp;lt;module-arg-2-value&amp;gt; ... &amp;lt;module-arg-n-key&amp;gt;=&amp;lt;module-arg-n-value&amp;gt;&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Touch a file.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>ansible -i hosts.ini all -m file -a &lt;span style="color:#e6db74">&amp;#34;path=~/file-to-touch mode=0644 state=touch&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="run-command-for-a-playbook">Run Command For A Playbook&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Run a playbook for group all.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>ansible-playbook -i hosts.ini &amp;lt;playbook-yml-file&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Run a playbook for a group.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>ansible-playbook -i hosts.ini &amp;lt;playbook-yml-file&amp;gt; &amp;lt;group-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Run a playbook for a host.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>ansible-playbook -i hosts.ini &amp;lt;playbook-yml-file&amp;gt; &amp;lt;hostname&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Show hosts information.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>ansible-playbook -i hosts.ini &amp;lt;playbook-yml-file&amp;gt; --list-hosts
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Show tasks information.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>ansible-playbook -i hosts.ini &amp;lt;playbook-yml-file&amp;gt; --list-tasks
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Perform playbook syntax check.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>ansible-playbook --syntax-check &amp;lt;playbook-yml-file&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div></description></item><item><title>Cheatsheets: ASCII Code Cheatsheet</title><link>https://devmemo.gitlab.io/cheatsheets/ascii_code/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://devmemo.gitlab.io/cheatsheets/ascii_code/</guid><description>
&lt;h2 id="ascii-code-table">ASCII Code Table&lt;/h2>
&lt;div class="sw-lg-table-container dark-scrollbar">
&lt;table class="sw-table" id="">
&lt;thead>
&lt;tr>
&lt;th>Symbol&lt;/th>
&lt;th>Dec&lt;/th>
&lt;th>Oct&lt;/th>
&lt;th>Hex&lt;/th>
&lt;th>Bin&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>NUL (Null)&lt;/td>
&lt;td>0&lt;/td>
&lt;td>0&lt;/td>
&lt;td>0&lt;/td>
&lt;td>00000000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>SOH (Start of Heading)&lt;/td>
&lt;td>1&lt;/td>
&lt;td>1&lt;/td>
&lt;td>1&lt;/td>
&lt;td>00000001&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>STX (Start of Text)&lt;/td>
&lt;td>2&lt;/td>
&lt;td>2&lt;/td>
&lt;td>2&lt;/td>
&lt;td>00000010&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>ETX (End of Text)&lt;/td>
&lt;td>3&lt;/td>
&lt;td>3&lt;/td>
&lt;td>3&lt;/td>
&lt;td>00000011&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>EOT (End of Transmission)&lt;/td>
&lt;td>4&lt;/td>
&lt;td>4&lt;/td>
&lt;td>4&lt;/td>
&lt;td>00000100&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>ENQ (Enquiry)&lt;/td>
&lt;td>5&lt;/td>
&lt;td>5&lt;/td>
&lt;td>5&lt;/td>
&lt;td>00000101&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>ACK (Acknowledgment)&lt;/td>
&lt;td>6&lt;/td>
&lt;td>6&lt;/td>
&lt;td>6&lt;/td>
&lt;td>00000110&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>BEL (Bell)&lt;/td>
&lt;td>7&lt;/td>
&lt;td>7&lt;/td>
&lt;td>7&lt;/td>
&lt;td>00000111&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>BS (Back Space)&lt;/td>
&lt;td>8&lt;/td>
&lt;td>10&lt;/td>
&lt;td>8&lt;/td>
&lt;td>00001000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>HT (Horizontal Tab)&lt;/td>
&lt;td>9&lt;/td>
&lt;td>11&lt;/td>
&lt;td>9&lt;/td>
&lt;td>00001001&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>LF (Line Feed)&lt;/td>
&lt;td>10&lt;/td>
&lt;td>12&lt;/td>
&lt;td>0A&lt;/td>
&lt;td>00001010&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>VT (Vertical Tab)&lt;/td>
&lt;td>11&lt;/td>
&lt;td>13&lt;/td>
&lt;td>0B&lt;/td>
&lt;td>00001011&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>FF (Form Feed)&lt;/td>
&lt;td>12&lt;/td>
&lt;td>14&lt;/td>
&lt;td>0C&lt;/td>
&lt;td>00001100&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>CR (Carriage Return)&lt;/td>
&lt;td>13&lt;/td>
&lt;td>15&lt;/td>
&lt;td>0D&lt;/td>
&lt;td>00001101&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>SO (Shift Out / X-On)&lt;/td>
&lt;td>14&lt;/td>
&lt;td>16&lt;/td>
&lt;td>0E&lt;/td>
&lt;td>00001110&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>SI (Shift In / X-Off)&lt;/td>
&lt;td>15&lt;/td>
&lt;td>17&lt;/td>
&lt;td>0F&lt;/td>
&lt;td>00001111&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>DLE (Data Line Escape)&lt;/td>
&lt;td>16&lt;/td>
&lt;td>20&lt;/td>
&lt;td>10&lt;/td>
&lt;td>00010000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>DC1 (Device Control 1 / oft. XON)&lt;/td>
&lt;td>17&lt;/td>
&lt;td>21&lt;/td>
&lt;td>11&lt;/td>
&lt;td>00010001&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>DC2 (Device Control 2)&lt;/td>
&lt;td>18&lt;/td>
&lt;td>22&lt;/td>
&lt;td>12&lt;/td>
&lt;td>00010010&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>DC3 (Device Control 3 / oft. XOFF)&lt;/td>
&lt;td>19&lt;/td>
&lt;td>23&lt;/td>
&lt;td>13&lt;/td>
&lt;td>00010011&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>DC4 (Device Control 4)&lt;/td>
&lt;td>20&lt;/td>
&lt;td>24&lt;/td>
&lt;td>14&lt;/td>
&lt;td>00010100&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>NAK (Negative Acknowledgement)&lt;/td>
&lt;td>21&lt;/td>
&lt;td>25&lt;/td>
&lt;td>15&lt;/td>
&lt;td>00010101&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>SYN (Synchronous Idle)&lt;/td>
&lt;td>22&lt;/td>
&lt;td>26&lt;/td>
&lt;td>16&lt;/td>
&lt;td>00010110&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>ETB (End of Transmit Block)&lt;/td>
&lt;td>23&lt;/td>
&lt;td>27&lt;/td>
&lt;td>17&lt;/td>
&lt;td>00010111&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>CAN (Cancel)&lt;/td>
&lt;td>24&lt;/td>
&lt;td>30&lt;/td>
&lt;td>18&lt;/td>
&lt;td>00011000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>EM (End of Medium)&lt;/td>
&lt;td>25&lt;/td>
&lt;td>31&lt;/td>
&lt;td>19&lt;/td>
&lt;td>00011001&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>SUB (Substitute)&lt;/td>
&lt;td>26&lt;/td>
&lt;td>32&lt;/td>
&lt;td>1A&lt;/td>
&lt;td>00011010&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>ESC (Escape)&lt;/td>
&lt;td>27&lt;/td>
&lt;td>33&lt;/td>
&lt;td>1B&lt;/td>
&lt;td>00011011&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>FS (File Separator)&lt;/td>
&lt;td>28&lt;/td>
&lt;td>34&lt;/td>
&lt;td>1C&lt;/td>
&lt;td>00011100&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>GS (Group Separator)&lt;/td>
&lt;td>29&lt;/td>
&lt;td>35&lt;/td>
&lt;td>1D&lt;/td>
&lt;td>00011101&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>RS (Record Separator)&lt;/td>
&lt;td>30&lt;/td>
&lt;td>36&lt;/td>
&lt;td>1E&lt;/td>
&lt;td>00011110&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>US (Unit Separator)&lt;/td>
&lt;td>31&lt;/td>
&lt;td>37&lt;/td>
&lt;td>1F&lt;/td>
&lt;td>00011111&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>(Space)&lt;/td>
&lt;td>32&lt;/td>
&lt;td>40&lt;/td>
&lt;td>20&lt;/td>
&lt;td>00100000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>!&lt;/td>
&lt;td>33&lt;/td>
&lt;td>41&lt;/td>
&lt;td>21&lt;/td>
&lt;td>00100001&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&amp;quot;&lt;/td>
&lt;td>34&lt;/td>
&lt;td>42&lt;/td>
&lt;td>22&lt;/td>
&lt;td>00100010&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>#&lt;/td>
&lt;td>35&lt;/td>
&lt;td>43&lt;/td>
&lt;td>23&lt;/td>
&lt;td>00100011&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>$&lt;/td>
&lt;td>36&lt;/td>
&lt;td>44&lt;/td>
&lt;td>24&lt;/td>
&lt;td>00100100&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>%&lt;/td>
&lt;td>37&lt;/td>
&lt;td>45&lt;/td>
&lt;td>25&lt;/td>
&lt;td>00100101&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&amp;amp;&lt;/td>
&lt;td>38&lt;/td>
&lt;td>46&lt;/td>
&lt;td>26&lt;/td>
&lt;td>00100110&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>'&lt;/td>
&lt;td>39&lt;/td>
&lt;td>47&lt;/td>
&lt;td>27&lt;/td>
&lt;td>00100111&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>(&lt;/td>
&lt;td>40&lt;/td>
&lt;td>50&lt;/td>
&lt;td>28&lt;/td>
&lt;td>00101000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>)&lt;/td>
&lt;td>41&lt;/td>
&lt;td>51&lt;/td>
&lt;td>29&lt;/td>
&lt;td>00101001&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>*&lt;/td>
&lt;td>42&lt;/td>
&lt;td>52&lt;/td>
&lt;td>2A&lt;/td>
&lt;td>00101010&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>+&lt;/td>
&lt;td>43&lt;/td>
&lt;td>53&lt;/td>
&lt;td>2B&lt;/td>
&lt;td>00101011&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>,&lt;/td>
&lt;td>44&lt;/td>
&lt;td>54&lt;/td>
&lt;td>2C&lt;/td>
&lt;td>00101100&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>-&lt;/td>
&lt;td>45&lt;/td>
&lt;td>55&lt;/td>
&lt;td>2D&lt;/td>
&lt;td>00101101&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>.&lt;/td>
&lt;td>46&lt;/td>
&lt;td>56&lt;/td>
&lt;td>2E&lt;/td>
&lt;td>00101110&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>/&lt;/td>
&lt;td>47&lt;/td>
&lt;td>57&lt;/td>
&lt;td>2F&lt;/td>
&lt;td>00101111&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>0&lt;/td>
&lt;td>48&lt;/td>
&lt;td>60&lt;/td>
&lt;td>30&lt;/td>
&lt;td>00110000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>1&lt;/td>
&lt;td>49&lt;/td>
&lt;td>61&lt;/td>
&lt;td>31&lt;/td>
&lt;td>00110001&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>2&lt;/td>
&lt;td>50&lt;/td>
&lt;td>62&lt;/td>
&lt;td>32&lt;/td>
&lt;td>00110010&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>3&lt;/td>
&lt;td>51&lt;/td>
&lt;td>63&lt;/td>
&lt;td>33&lt;/td>
&lt;td>00110011&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>4&lt;/td>
&lt;td>52&lt;/td>
&lt;td>64&lt;/td>
&lt;td>34&lt;/td>
&lt;td>00110100&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>5&lt;/td>
&lt;td>53&lt;/td>
&lt;td>65&lt;/td>
&lt;td>35&lt;/td>
&lt;td>00110101&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>6&lt;/td>
&lt;td>54&lt;/td>
&lt;td>66&lt;/td>
&lt;td>36&lt;/td>
&lt;td>00110110&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>7&lt;/td>
&lt;td>55&lt;/td>
&lt;td>67&lt;/td>
&lt;td>37&lt;/td>
&lt;td>00110111&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>8&lt;/td>
&lt;td>56&lt;/td>
&lt;td>70&lt;/td>
&lt;td>38&lt;/td>
&lt;td>00111000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>9&lt;/td>
&lt;td>57&lt;/td>
&lt;td>71&lt;/td>
&lt;td>39&lt;/td>
&lt;td>00111001&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>:&lt;/td>
&lt;td>58&lt;/td>
&lt;td>72&lt;/td>
&lt;td>3A&lt;/td>
&lt;td>00111010&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>;&lt;/td>
&lt;td>59&lt;/td>
&lt;td>73&lt;/td>
&lt;td>3B&lt;/td>
&lt;td>00111011&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&amp;lt;&lt;/td>
&lt;td>60&lt;/td>
&lt;td>74&lt;/td>
&lt;td>3C&lt;/td>
&lt;td>00111100&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>=&lt;/td>
&lt;td>61&lt;/td>
&lt;td>75&lt;/td>
&lt;td>3D&lt;/td>
&lt;td>00111101&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&amp;gt;&lt;/td>
&lt;td>62&lt;/td>
&lt;td>76&lt;/td>
&lt;td>3E&lt;/td>
&lt;td>00111110&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>?&lt;/td>
&lt;td>63&lt;/td>
&lt;td>77&lt;/td>
&lt;td>3F&lt;/td>
&lt;td>00111111&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>@&lt;/td>
&lt;td>64&lt;/td>
&lt;td>100&lt;/td>
&lt;td>40&lt;/td>
&lt;td>01000000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>A&lt;/td>
&lt;td>65&lt;/td>
&lt;td>101&lt;/td>
&lt;td>41&lt;/td>
&lt;td>01000001&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>B&lt;/td>
&lt;td>66&lt;/td>
&lt;td>102&lt;/td>
&lt;td>42&lt;/td>
&lt;td>01000010&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>C&lt;/td>
&lt;td>67&lt;/td>
&lt;td>103&lt;/td>
&lt;td>43&lt;/td>
&lt;td>01000011&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>D&lt;/td>
&lt;td>68&lt;/td>
&lt;td>104&lt;/td>
&lt;td>44&lt;/td>
&lt;td>01000100&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>E&lt;/td>
&lt;td>69&lt;/td>
&lt;td>105&lt;/td>
&lt;td>45&lt;/td>
&lt;td>01000101&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>F&lt;/td>
&lt;td>70&lt;/td>
&lt;td>106&lt;/td>
&lt;td>46&lt;/td>
&lt;td>01000110&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>G&lt;/td>
&lt;td>71&lt;/td>
&lt;td>107&lt;/td>
&lt;td>47&lt;/td>
&lt;td>01000111&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>H&lt;/td>
&lt;td>72&lt;/td>
&lt;td>110&lt;/td>
&lt;td>48&lt;/td>
&lt;td>01001000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>I&lt;/td>
&lt;td>73&lt;/td>
&lt;td>111&lt;/td>
&lt;td>49&lt;/td>
&lt;td>01001001&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>J&lt;/td>
&lt;td>74&lt;/td>
&lt;td>112&lt;/td>
&lt;td>4A&lt;/td>
&lt;td>01001010&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>K&lt;/td>
&lt;td>75&lt;/td>
&lt;td>113&lt;/td>
&lt;td>4B&lt;/td>
&lt;td>01001011&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>L&lt;/td>
&lt;td>76&lt;/td>
&lt;td>114&lt;/td>
&lt;td>4C&lt;/td>
&lt;td>01001100&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>M&lt;/td>
&lt;td>77&lt;/td>
&lt;td>115&lt;/td>
&lt;td>4D&lt;/td>
&lt;td>01001101&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>N&lt;/td>
&lt;td>78&lt;/td>
&lt;td>116&lt;/td>
&lt;td>4E&lt;/td>
&lt;td>01001110&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>O&lt;/td>
&lt;td>79&lt;/td>
&lt;td>117&lt;/td>
&lt;td>4F&lt;/td>
&lt;td>01001111&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>P&lt;/td>
&lt;td>80&lt;/td>
&lt;td>120&lt;/td>
&lt;td>50&lt;/td>
&lt;td>01010000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Q&lt;/td>
&lt;td>81&lt;/td>
&lt;td>121&lt;/td>
&lt;td>51&lt;/td>
&lt;td>01010001&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>R&lt;/td>
&lt;td>82&lt;/td>
&lt;td>122&lt;/td>
&lt;td>52&lt;/td>
&lt;td>01010010&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>S&lt;/td>
&lt;td>83&lt;/td>
&lt;td>123&lt;/td>
&lt;td>53&lt;/td>
&lt;td>01010011&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>T&lt;/td>
&lt;td>84&lt;/td>
&lt;td>124&lt;/td>
&lt;td>54&lt;/td>
&lt;td>01010100&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>U&lt;/td>
&lt;td>85&lt;/td>
&lt;td>125&lt;/td>
&lt;td>55&lt;/td>
&lt;td>01010101&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>V&lt;/td>
&lt;td>86&lt;/td>
&lt;td>126&lt;/td>
&lt;td>56&lt;/td>
&lt;td>01010110&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>W&lt;/td>
&lt;td>87&lt;/td>
&lt;td>127&lt;/td>
&lt;td>57&lt;/td>
&lt;td>01010111&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>X&lt;/td>
&lt;td>88&lt;/td>
&lt;td>130&lt;/td>
&lt;td>58&lt;/td>
&lt;td>01011000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Y&lt;/td>
&lt;td>89&lt;/td>
&lt;td>131&lt;/td>
&lt;td>59&lt;/td>
&lt;td>01011001&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Z&lt;/td>
&lt;td>90&lt;/td>
&lt;td>132&lt;/td>
&lt;td>5A&lt;/td>
&lt;td>01011010&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>[&lt;/td>
&lt;td>91&lt;/td>
&lt;td>133&lt;/td>
&lt;td>5B&lt;/td>
&lt;td>01011011&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>\&lt;/td>
&lt;td>92&lt;/td>
&lt;td>134&lt;/td>
&lt;td>5C&lt;/td>
&lt;td>01011100&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>]&lt;/td>
&lt;td>93&lt;/td>
&lt;td>135&lt;/td>
&lt;td>5D&lt;/td>
&lt;td>01011101&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>^&lt;/td>
&lt;td>94&lt;/td>
&lt;td>136&lt;/td>
&lt;td>5E&lt;/td>
&lt;td>01011110&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>_&lt;/td>
&lt;td>95&lt;/td>
&lt;td>137&lt;/td>
&lt;td>5F&lt;/td>
&lt;td>01011111&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>`&lt;/code>&lt;/td>
&lt;td>96&lt;/td>
&lt;td>140&lt;/td>
&lt;td>60&lt;/td>
&lt;td>01100000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>a&lt;/td>
&lt;td>97&lt;/td>
&lt;td>141&lt;/td>
&lt;td>61&lt;/td>
&lt;td>01100001&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>b&lt;/td>
&lt;td>98&lt;/td>
&lt;td>142&lt;/td>
&lt;td>62&lt;/td>
&lt;td>01100010&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>c&lt;/td>
&lt;td>99&lt;/td>
&lt;td>143&lt;/td>
&lt;td>63&lt;/td>
&lt;td>01100011&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>d&lt;/td>
&lt;td>100&lt;/td>
&lt;td>144&lt;/td>
&lt;td>64&lt;/td>
&lt;td>01100100&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>e&lt;/td>
&lt;td>101&lt;/td>
&lt;td>145&lt;/td>
&lt;td>65&lt;/td>
&lt;td>01100101&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>f&lt;/td>
&lt;td>102&lt;/td>
&lt;td>146&lt;/td>
&lt;td>66&lt;/td>
&lt;td>01100110&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>g&lt;/td>
&lt;td>103&lt;/td>
&lt;td>147&lt;/td>
&lt;td>67&lt;/td>
&lt;td>01100111&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>h&lt;/td>
&lt;td>104&lt;/td>
&lt;td>150&lt;/td>
&lt;td>68&lt;/td>
&lt;td>01101000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>i&lt;/td>
&lt;td>105&lt;/td>
&lt;td>151&lt;/td>
&lt;td>69&lt;/td>
&lt;td>01101001&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>j&lt;/td>
&lt;td>106&lt;/td>
&lt;td>152&lt;/td>
&lt;td>6A&lt;/td>
&lt;td>01101010&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>k&lt;/td>
&lt;td>107&lt;/td>
&lt;td>153&lt;/td>
&lt;td>6B&lt;/td>
&lt;td>01101011&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>l&lt;/td>
&lt;td>108&lt;/td>
&lt;td>154&lt;/td>
&lt;td>6C&lt;/td>
&lt;td>01101100&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>m&lt;/td>
&lt;td>109&lt;/td>
&lt;td>155&lt;/td>
&lt;td>6D&lt;/td>
&lt;td>01101101&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>n&lt;/td>
&lt;td>110&lt;/td>
&lt;td>156&lt;/td>
&lt;td>6E&lt;/td>
&lt;td>01101110&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>o&lt;/td>
&lt;td>111&lt;/td>
&lt;td>157&lt;/td>
&lt;td>6F&lt;/td>
&lt;td>01101111&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>p&lt;/td>
&lt;td>112&lt;/td>
&lt;td>160&lt;/td>
&lt;td>70&lt;/td>
&lt;td>01110000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>q&lt;/td>
&lt;td>113&lt;/td>
&lt;td>161&lt;/td>
&lt;td>71&lt;/td>
&lt;td>01110001&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>r&lt;/td>
&lt;td>114&lt;/td>
&lt;td>162&lt;/td>
&lt;td>72&lt;/td>
&lt;td>01110010&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>s&lt;/td>
&lt;td>115&lt;/td>
&lt;td>163&lt;/td>
&lt;td>73&lt;/td>
&lt;td>01110011&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>t&lt;/td>
&lt;td>116&lt;/td>
&lt;td>164&lt;/td>
&lt;td>74&lt;/td>
&lt;td>01110100&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>u&lt;/td>
&lt;td>117&lt;/td>
&lt;td>165&lt;/td>
&lt;td>75&lt;/td>
&lt;td>01110101&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>v&lt;/td>
&lt;td>118&lt;/td>
&lt;td>166&lt;/td>
&lt;td>76&lt;/td>
&lt;td>01110110&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>w&lt;/td>
&lt;td>119&lt;/td>
&lt;td>167&lt;/td>
&lt;td>77&lt;/td>
&lt;td>01110111&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>x&lt;/td>
&lt;td>120&lt;/td>
&lt;td>170&lt;/td>
&lt;td>78&lt;/td>
&lt;td>01111000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>y&lt;/td>
&lt;td>121&lt;/td>
&lt;td>171&lt;/td>
&lt;td>79&lt;/td>
&lt;td>01111001&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>z&lt;/td>
&lt;td>122&lt;/td>
&lt;td>172&lt;/td>
&lt;td>7A&lt;/td>
&lt;td>01111010&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>{&lt;/td>
&lt;td>123&lt;/td>
&lt;td>173&lt;/td>
&lt;td>7B&lt;/td>
&lt;td>01111011&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>|&lt;/td>
&lt;td>124&lt;/td>
&lt;td>174&lt;/td>
&lt;td>7C&lt;/td>
&lt;td>01111100&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>}&lt;/td>
&lt;td>125&lt;/td>
&lt;td>175&lt;/td>
&lt;td>7D&lt;/td>
&lt;td>01111101&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>~&lt;/td>
&lt;td>126&lt;/td>
&lt;td>176&lt;/td>
&lt;td>7E&lt;/td>
&lt;td>01111110&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>(Delete)&lt;/td>
&lt;td>127&lt;/td>
&lt;td>177&lt;/td>
&lt;td>7F&lt;/td>
&lt;td>01111111&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>€&lt;/td>
&lt;td>128&lt;/td>
&lt;td>200&lt;/td>
&lt;td>80&lt;/td>
&lt;td>10000000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;/td>
&lt;td>129&lt;/td>
&lt;td>201&lt;/td>
&lt;td>81&lt;/td>
&lt;td>10000001&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>‚&lt;/td>
&lt;td>130&lt;/td>
&lt;td>202&lt;/td>
&lt;td>82&lt;/td>
&lt;td>10000010&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>ƒ&lt;/td>
&lt;td>131&lt;/td>
&lt;td>203&lt;/td>
&lt;td>83&lt;/td>
&lt;td>10000011&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>„&lt;/td>
&lt;td>132&lt;/td>
&lt;td>204&lt;/td>
&lt;td>84&lt;/td>
&lt;td>10000100&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>…&lt;/td>
&lt;td>133&lt;/td>
&lt;td>205&lt;/td>
&lt;td>85&lt;/td>
&lt;td>10000101&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>†&lt;/td>
&lt;td>134&lt;/td>
&lt;td>206&lt;/td>
&lt;td>86&lt;/td>
&lt;td>10000110&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>‡&lt;/td>
&lt;td>135&lt;/td>
&lt;td>207&lt;/td>
&lt;td>87&lt;/td>
&lt;td>10000111&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>ˆ&lt;/td>
&lt;td>136&lt;/td>
&lt;td>210&lt;/td>
&lt;td>88&lt;/td>
&lt;td>10001000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>‰&lt;/td>
&lt;td>137&lt;/td>
&lt;td>211&lt;/td>
&lt;td>89&lt;/td>
&lt;td>10001001&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Š&lt;/td>
&lt;td>138&lt;/td>
&lt;td>212&lt;/td>
&lt;td>8A&lt;/td>
&lt;td>10001010&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>‹&lt;/td>
&lt;td>139&lt;/td>
&lt;td>213&lt;/td>
&lt;td>8B&lt;/td>
&lt;td>10001011&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Œ&lt;/td>
&lt;td>140&lt;/td>
&lt;td>214&lt;/td>
&lt;td>8C&lt;/td>
&lt;td>10001100&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;/td>
&lt;td>141&lt;/td>
&lt;td>215&lt;/td>
&lt;td>8D&lt;/td>
&lt;td>10001101&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Ž&lt;/td>
&lt;td>142&lt;/td>
&lt;td>216&lt;/td>
&lt;td>8E&lt;/td>
&lt;td>10001110&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;/td>
&lt;td>143&lt;/td>
&lt;td>217&lt;/td>
&lt;td>8F&lt;/td>
&lt;td>10001111&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;/td>
&lt;td>144&lt;/td>
&lt;td>220&lt;/td>
&lt;td>90&lt;/td>
&lt;td>10010000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>‘&lt;/td>
&lt;td>145&lt;/td>
&lt;td>221&lt;/td>
&lt;td>91&lt;/td>
&lt;td>10010001&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>’&lt;/td>
&lt;td>146&lt;/td>
&lt;td>222&lt;/td>
&lt;td>92&lt;/td>
&lt;td>10010010&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>“&lt;/td>
&lt;td>147&lt;/td>
&lt;td>223&lt;/td>
&lt;td>93&lt;/td>
&lt;td>10010011&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>”&lt;/td>
&lt;td>148&lt;/td>
&lt;td>224&lt;/td>
&lt;td>94&lt;/td>
&lt;td>10010100&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>•&lt;/td>
&lt;td>149&lt;/td>
&lt;td>225&lt;/td>
&lt;td>95&lt;/td>
&lt;td>10010101&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>–&lt;/td>
&lt;td>150&lt;/td>
&lt;td>226&lt;/td>
&lt;td>96&lt;/td>
&lt;td>10010110&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>—&lt;/td>
&lt;td>151&lt;/td>
&lt;td>227&lt;/td>
&lt;td>97&lt;/td>
&lt;td>10010111&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>˜&lt;/td>
&lt;td>152&lt;/td>
&lt;td>230&lt;/td>
&lt;td>98&lt;/td>
&lt;td>10011000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>™&lt;/td>
&lt;td>153&lt;/td>
&lt;td>231&lt;/td>
&lt;td>99&lt;/td>
&lt;td>10011001&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>š&lt;/td>
&lt;td>154&lt;/td>
&lt;td>232&lt;/td>
&lt;td>9A&lt;/td>
&lt;td>10011010&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>›&lt;/td>
&lt;td>155&lt;/td>
&lt;td>233&lt;/td>
&lt;td>9B&lt;/td>
&lt;td>10011011&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>œ&lt;/td>
&lt;td>156&lt;/td>
&lt;td>234&lt;/td>
&lt;td>9C&lt;/td>
&lt;td>10011100&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;/td>
&lt;td>157&lt;/td>
&lt;td>235&lt;/td>
&lt;td>9D&lt;/td>
&lt;td>10011101&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>ž&lt;/td>
&lt;td>158&lt;/td>
&lt;td>236&lt;/td>
&lt;td>9E&lt;/td>
&lt;td>10011110&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Ÿ&lt;/td>
&lt;td>159&lt;/td>
&lt;td>237&lt;/td>
&lt;td>9F&lt;/td>
&lt;td>10011111&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>(Non-breaking space)&lt;/td>
&lt;td>160&lt;/td>
&lt;td>240&lt;/td>
&lt;td>A0&lt;/td>
&lt;td>10100000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>¡&lt;/td>
&lt;td>161&lt;/td>
&lt;td>241&lt;/td>
&lt;td>A1&lt;/td>
&lt;td>10100001&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>¢&lt;/td>
&lt;td>162&lt;/td>
&lt;td>242&lt;/td>
&lt;td>A2&lt;/td>
&lt;td>10100010&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>£&lt;/td>
&lt;td>163&lt;/td>
&lt;td>243&lt;/td>
&lt;td>A3&lt;/td>
&lt;td>10100011&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>¤&lt;/td>
&lt;td>164&lt;/td>
&lt;td>244&lt;/td>
&lt;td>A4&lt;/td>
&lt;td>10100100&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>¥&lt;/td>
&lt;td>165&lt;/td>
&lt;td>245&lt;/td>
&lt;td>A5&lt;/td>
&lt;td>10100101&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>¦&lt;/td>
&lt;td>166&lt;/td>
&lt;td>246&lt;/td>
&lt;td>A6&lt;/td>
&lt;td>10100110&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>§&lt;/td>
&lt;td>167&lt;/td>
&lt;td>247&lt;/td>
&lt;td>A7&lt;/td>
&lt;td>10100111&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>¨&lt;/td>
&lt;td>168&lt;/td>
&lt;td>250&lt;/td>
&lt;td>A8&lt;/td>
&lt;td>10101000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>©&lt;/td>
&lt;td>169&lt;/td>
&lt;td>251&lt;/td>
&lt;td>A9&lt;/td>
&lt;td>10101001&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>ª&lt;/td>
&lt;td>170&lt;/td>
&lt;td>252&lt;/td>
&lt;td>AA&lt;/td>
&lt;td>10101010&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>«&lt;/td>
&lt;td>171&lt;/td>
&lt;td>253&lt;/td>
&lt;td>AB&lt;/td>
&lt;td>10101011&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>¬&lt;/td>
&lt;td>172&lt;/td>
&lt;td>254&lt;/td>
&lt;td>AC&lt;/td>
&lt;td>10101100&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>(Soft hyphen)&lt;/td>
&lt;td>173&lt;/td>
&lt;td>255&lt;/td>
&lt;td>AD&lt;/td>
&lt;td>10101101&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>®&lt;/td>
&lt;td>174&lt;/td>
&lt;td>256&lt;/td>
&lt;td>AE&lt;/td>
&lt;td>10101110&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>¯&lt;/td>
&lt;td>175&lt;/td>
&lt;td>257&lt;/td>
&lt;td>AF&lt;/td>
&lt;td>10101111&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>°&lt;/td>
&lt;td>176&lt;/td>
&lt;td>260&lt;/td>
&lt;td>B0&lt;/td>
&lt;td>10110000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>±&lt;/td>
&lt;td>177&lt;/td>
&lt;td>261&lt;/td>
&lt;td>B1&lt;/td>
&lt;td>10110001&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>²&lt;/td>
&lt;td>178&lt;/td>
&lt;td>262&lt;/td>
&lt;td>B2&lt;/td>
&lt;td>10110010&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>³&lt;/td>
&lt;td>179&lt;/td>
&lt;td>263&lt;/td>
&lt;td>B3&lt;/td>
&lt;td>10110011&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>´&lt;/td>
&lt;td>180&lt;/td>
&lt;td>264&lt;/td>
&lt;td>B4&lt;/td>
&lt;td>10110100&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>µ&lt;/td>
&lt;td>181&lt;/td>
&lt;td>265&lt;/td>
&lt;td>B5&lt;/td>
&lt;td>10110101&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>¶&lt;/td>
&lt;td>182&lt;/td>
&lt;td>266&lt;/td>
&lt;td>B6&lt;/td>
&lt;td>10110110&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>·&lt;/td>
&lt;td>183&lt;/td>
&lt;td>267&lt;/td>
&lt;td>B7&lt;/td>
&lt;td>10110111&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>¸&lt;/td>
&lt;td>184&lt;/td>
&lt;td>270&lt;/td>
&lt;td>B8&lt;/td>
&lt;td>10111000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>¹&lt;/td>
&lt;td>185&lt;/td>
&lt;td>271&lt;/td>
&lt;td>B9&lt;/td>
&lt;td>10111001&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>º&lt;/td>
&lt;td>186&lt;/td>
&lt;td>272&lt;/td>
&lt;td>BA&lt;/td>
&lt;td>10111010&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>»&lt;/td>
&lt;td>187&lt;/td>
&lt;td>273&lt;/td>
&lt;td>BB&lt;/td>
&lt;td>10111011&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>¼&lt;/td>
&lt;td>188&lt;/td>
&lt;td>274&lt;/td>
&lt;td>BC&lt;/td>
&lt;td>10111100&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>½&lt;/td>
&lt;td>189&lt;/td>
&lt;td>275&lt;/td>
&lt;td>BD&lt;/td>
&lt;td>10111101&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>¾&lt;/td>
&lt;td>190&lt;/td>
&lt;td>276&lt;/td>
&lt;td>BE&lt;/td>
&lt;td>10111110&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>¿&lt;/td>
&lt;td>191&lt;/td>
&lt;td>277&lt;/td>
&lt;td>BF&lt;/td>
&lt;td>10111111&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>À&lt;/td>
&lt;td>192&lt;/td>
&lt;td>300&lt;/td>
&lt;td>C0&lt;/td>
&lt;td>11000000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Á&lt;/td>
&lt;td>193&lt;/td>
&lt;td>301&lt;/td>
&lt;td>C1&lt;/td>
&lt;td>11000001&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Â&lt;/td>
&lt;td>194&lt;/td>
&lt;td>302&lt;/td>
&lt;td>C2&lt;/td>
&lt;td>11000010&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Ã&lt;/td>
&lt;td>195&lt;/td>
&lt;td>303&lt;/td>
&lt;td>C3&lt;/td>
&lt;td>11000011&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Ä&lt;/td>
&lt;td>196&lt;/td>
&lt;td>304&lt;/td>
&lt;td>C4&lt;/td>
&lt;td>11000100&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Å&lt;/td>
&lt;td>197&lt;/td>
&lt;td>305&lt;/td>
&lt;td>C5&lt;/td>
&lt;td>11000101&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Æ&lt;/td>
&lt;td>198&lt;/td>
&lt;td>306&lt;/td>
&lt;td>C6&lt;/td>
&lt;td>11000110&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Ç&lt;/td>
&lt;td>199&lt;/td>
&lt;td>307&lt;/td>
&lt;td>C7&lt;/td>
&lt;td>11000111&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>È&lt;/td>
&lt;td>200&lt;/td>
&lt;td>310&lt;/td>
&lt;td>C8&lt;/td>
&lt;td>11001000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>É&lt;/td>
&lt;td>201&lt;/td>
&lt;td>311&lt;/td>
&lt;td>C9&lt;/td>
&lt;td>11001001&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Ê&lt;/td>
&lt;td>202&lt;/td>
&lt;td>312&lt;/td>
&lt;td>CA&lt;/td>
&lt;td>11001010&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Ë&lt;/td>
&lt;td>203&lt;/td>
&lt;td>313&lt;/td>
&lt;td>CB&lt;/td>
&lt;td>11001011&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Ì&lt;/td>
&lt;td>204&lt;/td>
&lt;td>314&lt;/td>
&lt;td>CC&lt;/td>
&lt;td>11001100&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Í&lt;/td>
&lt;td>205&lt;/td>
&lt;td>315&lt;/td>
&lt;td>CD&lt;/td>
&lt;td>11001101&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Î&lt;/td>
&lt;td>206&lt;/td>
&lt;td>316&lt;/td>
&lt;td>CE&lt;/td>
&lt;td>11001110&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Ï&lt;/td>
&lt;td>207&lt;/td>
&lt;td>317&lt;/td>
&lt;td>CF&lt;/td>
&lt;td>11001111&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Ð&lt;/td>
&lt;td>208&lt;/td>
&lt;td>320&lt;/td>
&lt;td>D0&lt;/td>
&lt;td>11010000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Ñ&lt;/td>
&lt;td>209&lt;/td>
&lt;td>321&lt;/td>
&lt;td>D1&lt;/td>
&lt;td>11010001&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Ò&lt;/td>
&lt;td>210&lt;/td>
&lt;td>322&lt;/td>
&lt;td>D2&lt;/td>
&lt;td>11010010&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Ó&lt;/td>
&lt;td>211&lt;/td>
&lt;td>323&lt;/td>
&lt;td>D3&lt;/td>
&lt;td>11010011&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Ô&lt;/td>
&lt;td>212&lt;/td>
&lt;td>324&lt;/td>
&lt;td>D4&lt;/td>
&lt;td>11010100&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Õ&lt;/td>
&lt;td>213&lt;/td>
&lt;td>325&lt;/td>
&lt;td>D5&lt;/td>
&lt;td>11010101&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Ö&lt;/td>
&lt;td>214&lt;/td>
&lt;td>326&lt;/td>
&lt;td>D6&lt;/td>
&lt;td>11010110&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>×&lt;/td>
&lt;td>215&lt;/td>
&lt;td>327&lt;/td>
&lt;td>D7&lt;/td>
&lt;td>11010111&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Ø&lt;/td>
&lt;td>216&lt;/td>
&lt;td>330&lt;/td>
&lt;td>D8&lt;/td>
&lt;td>11011000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Ù&lt;/td>
&lt;td>217&lt;/td>
&lt;td>331&lt;/td>
&lt;td>D9&lt;/td>
&lt;td>11011001&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Ú&lt;/td>
&lt;td>218&lt;/td>
&lt;td>332&lt;/td>
&lt;td>DA&lt;/td>
&lt;td>11011010&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Û&lt;/td>
&lt;td>219&lt;/td>
&lt;td>333&lt;/td>
&lt;td>DB&lt;/td>
&lt;td>11011011&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Ü&lt;/td>
&lt;td>220&lt;/td>
&lt;td>334&lt;/td>
&lt;td>DC&lt;/td>
&lt;td>11011100&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Ý&lt;/td>
&lt;td>221&lt;/td>
&lt;td>335&lt;/td>
&lt;td>DD&lt;/td>
&lt;td>11011101&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Þ&lt;/td>
&lt;td>222&lt;/td>
&lt;td>336&lt;/td>
&lt;td>DE&lt;/td>
&lt;td>11011110&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>ß&lt;/td>
&lt;td>223&lt;/td>
&lt;td>337&lt;/td>
&lt;td>DF&lt;/td>
&lt;td>11011111&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>à&lt;/td>
&lt;td>224&lt;/td>
&lt;td>340&lt;/td>
&lt;td>E0&lt;/td>
&lt;td>11100000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>á&lt;/td>
&lt;td>225&lt;/td>
&lt;td>341&lt;/td>
&lt;td>E1&lt;/td>
&lt;td>11100001&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>â&lt;/td>
&lt;td>226&lt;/td>
&lt;td>342&lt;/td>
&lt;td>E2&lt;/td>
&lt;td>11100010&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>ã&lt;/td>
&lt;td>227&lt;/td>
&lt;td>343&lt;/td>
&lt;td>E3&lt;/td>
&lt;td>11100011&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>ä&lt;/td>
&lt;td>228&lt;/td>
&lt;td>344&lt;/td>
&lt;td>E4&lt;/td>
&lt;td>11100100&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>å&lt;/td>
&lt;td>229&lt;/td>
&lt;td>345&lt;/td>
&lt;td>E5&lt;/td>
&lt;td>11100101&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>æ&lt;/td>
&lt;td>230&lt;/td>
&lt;td>346&lt;/td>
&lt;td>E6&lt;/td>
&lt;td>11100110&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>ç&lt;/td>
&lt;td>231&lt;/td>
&lt;td>347&lt;/td>
&lt;td>E7&lt;/td>
&lt;td>11100111&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>è&lt;/td>
&lt;td>232&lt;/td>
&lt;td>350&lt;/td>
&lt;td>E8&lt;/td>
&lt;td>11101000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>é&lt;/td>
&lt;td>233&lt;/td>
&lt;td>351&lt;/td>
&lt;td>E9&lt;/td>
&lt;td>11101001&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>ê&lt;/td>
&lt;td>234&lt;/td>
&lt;td>352&lt;/td>
&lt;td>EA&lt;/td>
&lt;td>11101010&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>ë&lt;/td>
&lt;td>235&lt;/td>
&lt;td>353&lt;/td>
&lt;td>EB&lt;/td>
&lt;td>11101011&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>ì&lt;/td>
&lt;td>236&lt;/td>
&lt;td>354&lt;/td>
&lt;td>EC&lt;/td>
&lt;td>11101100&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>í&lt;/td>
&lt;td>237&lt;/td>
&lt;td>355&lt;/td>
&lt;td>ED&lt;/td>
&lt;td>11101101&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>î&lt;/td>
&lt;td>238&lt;/td>
&lt;td>356&lt;/td>
&lt;td>EE&lt;/td>
&lt;td>11101110&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>ï&lt;/td>
&lt;td>239&lt;/td>
&lt;td>357&lt;/td>
&lt;td>EF&lt;/td>
&lt;td>11101111&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>ð&lt;/td>
&lt;td>240&lt;/td>
&lt;td>360&lt;/td>
&lt;td>F0&lt;/td>
&lt;td>11110000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>ñ&lt;/td>
&lt;td>241&lt;/td>
&lt;td>361&lt;/td>
&lt;td>F1&lt;/td>
&lt;td>11110001&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>ò&lt;/td>
&lt;td>242&lt;/td>
&lt;td>362&lt;/td>
&lt;td>F2&lt;/td>
&lt;td>11110010&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>ó&lt;/td>
&lt;td>243&lt;/td>
&lt;td>363&lt;/td>
&lt;td>F3&lt;/td>
&lt;td>11110011&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>ô&lt;/td>
&lt;td>244&lt;/td>
&lt;td>364&lt;/td>
&lt;td>F4&lt;/td>
&lt;td>11110100&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>õ&lt;/td>
&lt;td>245&lt;/td>
&lt;td>365&lt;/td>
&lt;td>F5&lt;/td>
&lt;td>11110101&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>ö&lt;/td>
&lt;td>246&lt;/td>
&lt;td>366&lt;/td>
&lt;td>F6&lt;/td>
&lt;td>11110110&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>÷&lt;/td>
&lt;td>247&lt;/td>
&lt;td>367&lt;/td>
&lt;td>F7&lt;/td>
&lt;td>11110111&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>ø&lt;/td>
&lt;td>248&lt;/td>
&lt;td>370&lt;/td>
&lt;td>F8&lt;/td>
&lt;td>11111000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>ù&lt;/td>
&lt;td>249&lt;/td>
&lt;td>371&lt;/td>
&lt;td>F9&lt;/td>
&lt;td>11111001&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>ú&lt;/td>
&lt;td>250&lt;/td>
&lt;td>372&lt;/td>
&lt;td>FA&lt;/td>
&lt;td>11111010&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>û&lt;/td>
&lt;td>251&lt;/td>
&lt;td>373&lt;/td>
&lt;td>FB&lt;/td>
&lt;td>11111011&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>ü&lt;/td>
&lt;td>252&lt;/td>
&lt;td>374&lt;/td>
&lt;td>FC&lt;/td>
&lt;td>11111100&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>ý&lt;/td>
&lt;td>253&lt;/td>
&lt;td>375&lt;/td>
&lt;td>FD&lt;/td>
&lt;td>11111101&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>þ&lt;/td>
&lt;td>254&lt;/td>
&lt;td>376&lt;/td>
&lt;td>FE&lt;/td>
&lt;td>11111110&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>ÿ&lt;/td>
&lt;td>255&lt;/td>
&lt;td>377&lt;/td>
&lt;td>FF&lt;/td>
&lt;td>11111111&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/div></description></item><item><title>Cheatsheets: Docker Cheatsheet</title><link>https://devmemo.gitlab.io/cheatsheets/docker/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://devmemo.gitlab.io/cheatsheets/docker/</guid><description>
&lt;h2 id="installation">Installation&lt;/h2>
&lt;h3 id="install-docker-on-ubuntu">Install Docker On Ubuntu&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Update the apt package index and install packages to allow apt to use a repository over HTTPS.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo apt-get update
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo apt-get install ca-certificates curl gnupg lsb-release
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Add Docker’s official GPG key.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo mkdir -p /etc/apt/keyrings
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># set up the repository.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>echo &lt;span style="color:#e6db74">&amp;#34;deb [arch=&lt;/span>&lt;span style="color:#66d9ef">$(&lt;/span>dpkg --print-architecture&lt;span style="color:#66d9ef">)&lt;/span>&lt;span style="color:#e6db74"> signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#e6db74"> &lt;/span>&lt;span style="color:#66d9ef">$(&lt;/span>lsb_release -cs&lt;span style="color:#66d9ef">)&lt;/span>&lt;span style="color:#e6db74"> stable&amp;#34;&lt;/span> | sudo tee /etc/apt/sources.list.d/docker.list &amp;gt; /dev/null
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Install docker.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo apt update &lt;span style="color:#f92672">&amp;amp;&amp;amp;&lt;/span> sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin -y
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Verify if docker is successfully installed.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo docker run hello-world
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="install-docker-on-debian">Install Docker On Debian&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Update the apt package index and install packages to allow apt to use a repository over HTTPS.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo apt-get update
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo apt-get install ca-certificates curl gnupg lsb-release
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Add Docker’s official GPG key.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo mkdir -p /etc/apt/keyrings
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Set up the repository.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>echo &lt;span style="color:#e6db74">&amp;#34;deb [arch=&lt;/span>&lt;span style="color:#66d9ef">$(&lt;/span>dpkg --print-architecture&lt;span style="color:#66d9ef">)&lt;/span>&lt;span style="color:#e6db74"> signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#e6db74"> &lt;/span>&lt;span style="color:#66d9ef">$(&lt;/span>lsb_release -cs&lt;span style="color:#66d9ef">)&lt;/span>&lt;span style="color:#e6db74"> stable&amp;#34;&lt;/span> | sudo tee /etc/apt/sources.list.d/docker.list &amp;gt; /dev/null
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Install docker.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo apt update &lt;span style="color:#f92672">&amp;amp;&amp;amp;&lt;/span> sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Verify if docker is successfully installed.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo docker run hello-world
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="run-docker-commands-without-sudo">Run Docker Commands Without Sudo&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create a docker group and add yourself to it,&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># so that you don&amp;#39;t need sudo before your docker command.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Note that you&amp;#39;ll need to log out and log in for the changes to take effect.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo groupadd docker
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo usermod -aG docker $USER
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="commands">Commands&lt;/h2>
&lt;h3 id="image-management">Image Management&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Build an image.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker build -t &amp;lt;image-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Build an Image without using cache.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker build -t &amp;lt;image-name&amp;gt; . –no-cache
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List local images.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker images
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create a docker image from a running container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker commit &amp;lt;container-name-or-id&amp;gt; &amp;lt;image-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Delete a local image.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker rmi &amp;lt;image-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Remove all unused images.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker image prune
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Remove all unused containers, images, caches.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker system prune
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Push docker image to docker registry.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Image name has to be in the form of &amp;lt;docker-registry-address&amp;gt;/&amp;lt;docker-repo&amp;gt;[:&amp;lt;docker-tag&amp;gt;].&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Examples are:&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># * docker-repo.local/my-image&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># * docker-repo.local/my-image:debug&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker push &amp;lt;image-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Remove dangling images.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker images -qf dangling&lt;span style="color:#f92672">=&lt;/span>true | xargs docker rmi
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="container-management">Container Management&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create a docker container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker create &amp;lt;image-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Run a container from an image.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker run &amp;lt;image-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Run a container in interactive mode.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker run -it &amp;lt;image-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Run a container in the background.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker run -d &amp;lt;image-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Run a container with a port mapping.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker run -p &amp;lt;host-port&amp;gt;:&amp;lt;container-port&amp;gt; &amp;lt;image-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Start an existing container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker start &amp;lt;container-id-or-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Restart a container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker restart &amp;lt;container-id-or-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Pause a container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker pause &amp;lt;container-id-or-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Unpause a container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker unpause &amp;lt;container-id-or-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Wait until running container stops.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker wait &amp;lt;container-id-or-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Stop a container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker stop &amp;lt;container-id-or-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Kill a container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker kill &amp;lt;container-id-or-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Attach a container. (C-p C-q to detach)&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker attach &amp;lt;container-id-or-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Rename a container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker rename &amp;lt;container-id-or-name&amp;gt; &amp;lt;new-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Update a container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker update &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span> &amp;lt;container-id-or-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Remove a stopped container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker rm &amp;lt;container-id-or-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Follow the logs of a container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker logs -f &amp;lt;container-id-or-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Inspect a running container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker inspect &amp;lt;container-id-or-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List running containers.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker ps
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List all containers.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker ps -a
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="file-copy">File Copy&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Copy files from host to container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker cp &amp;lt;host-filepath&amp;gt; &amp;lt;container-id-or-name&amp;gt;:&amp;lt;container-filepath&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Copy files from container to host.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker cp &amp;lt;container-id-or-name&amp;gt;:&amp;lt;container-filepath&amp;gt; &amp;lt;host-filepath&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Export all files in container to host.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker export &amp;lt;container-id-or-name&amp;gt; -o &amp;lt;filename&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="network-management">Network Management&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create a docker network.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker network create --subnet &amp;lt;subnet&amp;gt; --gateway &amp;lt;gateway&amp;gt; &amp;lt;docker-network-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Remove a docker network.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker network rm &amp;lt;docker-network-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List all docker networks.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker network ls
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Inspect a docker network.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker network inspect &amp;lt;docker-network-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Connect a container with a docker network.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker network connect &amp;lt;docker-network-name&amp;gt; &amp;lt;container-id-or-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Disconnect a container with a docker network.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker network disconnect &amp;lt;docker-network-name&amp;gt; &amp;lt;container-id-or-name&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="docker-in-docker">Docker In Docker&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Run a docker container which maps the /var/run/docker.sock file,&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># so that you can run another docker container within this one.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker run -v /var/run/docker.sock:/var/run/docker.sock -it &amp;lt;image-name&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="dockerfile-builder-commands">Dockerfile Builder Commands&lt;/h2>
&lt;div class="sw-lg-table-container dark-scrollbar">
&lt;table class="sw-key-value-table" id="">
&lt;thead>
&lt;tr>
&lt;th>Command&lt;/th>
&lt;th>Description&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>&lt;code>FROM &amp;lt;image-name&amp;gt;&lt;/code>&lt;/td>
&lt;td>Docker base image name.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>MAINTAINER &amp;lt;email&amp;gt;&lt;/code>&lt;/td>
&lt;td>Maintainer&amp;rsquo;s email address.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>COPY &amp;lt;src-file-on-host&amp;gt; &amp;lt;dst-file-on-docker&amp;gt;&lt;/code>&lt;/td>
&lt;td>Copy files from host to docker image.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>RUN &amp;lt;command&amp;gt;&lt;/code>&lt;/td>
&lt;td>Run a command when building the image.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>USER &amp;lt;username&amp;gt;&lt;/code>&lt;/td>
&lt;td>Set the default user name.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>WORKDIR &amp;lt;dir&amp;gt;&lt;/code>&lt;/td>
&lt;td>Set the default working directory.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>CMD &amp;lt;command&amp;gt;&lt;/code>&lt;/td>
&lt;td>Start up default command which can be overridden by docker cli.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>ENTRYPOINT &amp;lt;command&amp;gt;&lt;/code>&lt;/td>
&lt;td>Start up default command which cannot be overridden by docker cli.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>ENV &amp;lt;env-name&amp;gt; &amp;lt;env-value&amp;gt;&lt;/code>&lt;/td>
&lt;td>Environment variables.&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/div>
&lt;h2 id="docker-config">Docker Config&lt;/h2>
&lt;h3 id="insecure-docker-registry">Insecure Docker Registry&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Add the following content to /etc/docker/daemon.json if you using an insecure docker registry.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">{&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#e6db74">&amp;#34;insecure-registries&amp;#34;&lt;/span> : &lt;span style="color:#f92672">[&lt;/span>&lt;span style="color:#e6db74">&amp;#34;&amp;lt;your-docker-register-server-ip-or-hostname&amp;gt;&amp;#34;&lt;/span>&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div></description></item><item><title>Cheatsheets: Docker Compose Cheatsheet</title><link>https://devmemo.gitlab.io/cheatsheets/docker_compose/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://devmemo.gitlab.io/cheatsheets/docker_compose/</guid><description>
&lt;h2 id="commands">Commands&lt;/h2>
&lt;h3 id="basics">Basics&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Build or rebuild services&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker compose build
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Creates containers for a service.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker compose create
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Start services&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker compose start
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Restart service containers&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker compose restart
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create and start containers&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker compose up
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Run a one-off command on a service.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker compose run
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Pause services&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker compose pause
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Unpause services&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker compose unpause
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Stop services&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker compose stop
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Removes stopped service containers&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker compose rm
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Stop and remove containers, networks&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker compose down
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Force stop service containers.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker compose kill
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Execute a command in a running container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker compose exec
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="check-status">Check Status&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List running compose projects&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker compose ls
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List containers&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker compose ps
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Print the public port for a port binding.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker compose port
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Receive real time events from containers.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker compose events
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># View output from containers&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker compose logs
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Display the running processes&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker compose top
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="images">Images&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Pull service images&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker compose pull
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Push service images&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker compose push
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List images used by the created containers&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker compose images
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="file-operations">File Operations&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Copy files/folders from a service container to the local filesystem&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker compose cp &amp;lt;service&amp;gt;:&amp;lt;src-filepath&amp;gt; &amp;lt;dst-filepath&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Copy files/folders from the local filesystem to a service container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker compose cp &amp;lt;src-filepath&amp;gt; &amp;lt;service&amp;gt;:&amp;lt;dst-filepath&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="others">Others&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Show the Docker Compose version information&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker compose version
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Converts the compose file to platform’s canonical format&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>docker compose convert
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="docker-compose-config">Docker Compose Config&lt;/h2>
&lt;h3 id="an-basic-example">An Basic Example&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-yaml" data-lang="yaml">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">version&lt;/span>: &lt;span style="color:#e6db74">&amp;#39;3.9&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">services&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">hello-world&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">image&lt;/span>: &lt;span style="color:#ae81ff">hello-world:latest&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="spec">Spec&lt;/h3>
&lt;h4 id="build">Build&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-yaml" data-lang="yaml">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">services&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">web&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#75715e"># Build from Dockerfile&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">build&lt;/span>: &lt;span style="color:#ae81ff">.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#75715e"># Build arguments.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">args&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">APP_HOME&lt;/span>: &lt;span style="color:#ae81ff">app&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#75715e"># Build from custom Dockerfile&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">build&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">context&lt;/span>: &lt;span style="color:#ae81ff">./dir&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">dockerfile&lt;/span>: &lt;span style="color:#ae81ff">Dockerfile.dev&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#75715e"># Build image.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">image&lt;/span>: &lt;span style="color:#ae81ff">debian&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">image&lt;/span>: &lt;span style="color:#ae81ff">ubuntu&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">image&lt;/span>: &lt;span style="color:#ae81ff">ubuntu:20.04&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h4 id="network">Network&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-yaml" data-lang="yaml">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">services&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">web&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#75715e"># Set container network mode.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">network_mode&lt;/span>: &lt;span style="color:#e6db74">&amp;#34;host&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">network_mode&lt;/span>: &lt;span style="color:#e6db74">&amp;#34;none&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">network_mode&lt;/span>: &lt;span style="color:#e6db74">&amp;#34;service:[service name]&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#75715e"># Define the networks that service containers are attached to.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">networks&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#ae81ff">some-network&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#ae81ff">other-network&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#75715e"># Expose container ports.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">ports&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#e6db74">&amp;#34;3000&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#e6db74">&amp;#34;3000-3005&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#e6db74">&amp;#34;8000:8000&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#e6db74">&amp;#34;9090-9091:8080-8081&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#e6db74">&amp;#34;49100:22&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#e6db74">&amp;#34;127.0.0.1:8001:8001&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#e6db74">&amp;#34;127.0.0.1:5000-5010:5000-5010&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#e6db74">&amp;#34;6060:6060/udp&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#75715e"># Define dns server.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">dns&lt;/span>: &lt;span style="color:#ae81ff">8.8.8.8&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#75715e"># Define custom DNS search domains to set on container network interface configuration.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">dns_search&lt;/span>: &lt;span style="color:#ae81ff">example.com&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#75715e"># List custom DNS options to be passed to the container’s DNS resolver.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">dns_opt&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#ae81ff">use-vc&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#66d9ef">no&lt;/span>-&lt;span style="color:#ae81ff">tld-query&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#75715e"># Defines a network link to containers in another service.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">links&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#ae81ff">db&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#ae81ff">db:database&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#ae81ff">redis&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h4 id="environment-variable">Environment Variable&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-yaml" data-lang="yaml">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">services&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">web&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#75715e"># Define environment variables.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">environment&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">RACK_ENV&lt;/span>: &lt;span style="color:#ae81ff">development&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">SHOW&lt;/span>: &lt;span style="color:#e6db74">&amp;#34;true&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">USER_INPUT&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">COMPOSE_PROJECT_NAME&lt;/span>: &lt;span style="color:#e6db74">&amp;#34;foo&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#75715e"># Define environment variables from file.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">env_file&lt;/span>: &lt;span style="color:#ae81ff">.env&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">env_file&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#ae81ff">./a.env&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#ae81ff">./b.env&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h4 id="commands-1">Commands&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-yaml" data-lang="yaml">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">services&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">web&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#75715e"># Start up command, which overrides the image default command.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">command&lt;/span>: &lt;span style="color:#ae81ff">echo &amp;#34;I&amp;#39;m running ${COMPOSE_PROJECT_NAME}&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#75715e"># Start up command in the list form, which overrides the image default command.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">entrypoint&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#ae81ff">php&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - -&lt;span style="color:#ae81ff">d&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#ae81ff">zend_extension=/usr/local/lib/php/extensions/no-debug-non-zts-20100525/xdebug.so&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - -&lt;span style="color:#ae81ff">d&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#ae81ff">memory_limit=-1&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#ae81ff">vendor/bin/phpunit&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h4 id="labels">Labels&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-yaml" data-lang="yaml">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">services&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">web&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#75715e"># Container label meta data.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">labels&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">com.example.description&lt;/span>: &lt;span style="color:#e6db74">&amp;#34;Accounting webapp&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">com.example.department&lt;/span>: &lt;span style="color:#e6db74">&amp;#34;Finance&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">com.example.label-with-empty-value&lt;/span>: &lt;span style="color:#e6db74">&amp;#34;&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h4 id="logging">Logging&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-yaml" data-lang="yaml">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">services&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">web&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#75715e"># Define logging.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">logging&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">driver&lt;/span>: &lt;span style="color:#ae81ff">syslog&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">options&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">syslog-address&lt;/span>: &lt;span style="color:#e6db74">&amp;#34;tcp://192.168.0.42:123&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h4 id="dependencies">Dependencies&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-yaml" data-lang="yaml">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">services&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">web&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">build&lt;/span>: &lt;span style="color:#ae81ff">.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#75715e"># Define startup and shutdown dependencies between services.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">depends_on&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#ae81ff">db&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#ae81ff">redis&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">redis&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">image&lt;/span>: &lt;span style="color:#ae81ff">redis&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">db&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">image&lt;/span>: &lt;span style="color:#ae81ff">postgres&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div></description></item><item><title>Cheatsheets: Git Cheatsheet</title><link>https://devmemo.gitlab.io/cheatsheets/git/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://devmemo.gitlab.io/cheatsheets/git/</guid><description>
&lt;h2 id="commands">Commands&lt;/h2>
&lt;h3 id="new-repo">New Repo&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create a new local git repo.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git init &lt;span style="color:#f92672">[&lt;/span>project name&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Clone a git repo.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git clone &amp;lt;url&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Clone a git repo to a local dir.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git clone &amp;lt;url&amp;gt; &amp;lt;local-dir&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="config">Config&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Set your user name.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git config --global user.name &lt;span style="color:#e6db74">&amp;#34;name&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Set your email address.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git config --global user.email &lt;span style="color:#e6db74">&amp;#34;email&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Edit git global config.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git config --global --edit
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="branch">Branch&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List all local branches.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git branch
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List all local and remote branches.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git branch -a
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Check out to another branch.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git checkout &amp;lt;branch-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Check out to the previous branch.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git checkout -
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create a new local branch and check it out.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git checkout -b &amp;lt;branch-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Delete a local local branch.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git branch -D &amp;lt;branch-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Merge the target branch changes into the current branch.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git merge &amp;lt;branch-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Merge a commit into the current branch.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git cherry-pick &amp;lt;commit-id&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Rebase the current branch onto the target branch.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git rebase &amp;lt;branch-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Fetch all remote branches from alias.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git fetch &lt;span style="color:#f92672">[&lt;/span>alias&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Fetch and merge commits from tracking remote branch&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git pull
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Push a local branch to remote with same branch name.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git push &lt;span style="color:#f92672">[&lt;/span>alias&lt;span style="color:#f92672">]&lt;/span> &lt;span style="color:#f92672">[&lt;/span>branch&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Push a local branch to another remote branch.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git push &lt;span style="color:#f92672">[&lt;/span>alias&lt;span style="color:#f92672">]&lt;/span> &lt;span style="color:#f92672">[&lt;/span>local-branch&lt;span style="color:#f92672">]&lt;/span>:&lt;span style="color:#f92672">[&lt;/span>remote-branch&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Delete a remote branch&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git push origin --delete &amp;lt;branch-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Fetch master branch from other branch and rebase on it.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git fetch origin master:master &lt;span style="color:#f92672">&amp;amp;&amp;amp;&lt;/span> git rebase master
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="changes">Changes&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Show local changes.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git status
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Stage file.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git add &amp;lt;file&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Unstage file.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git reset &amp;lt;file&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Stage changes for all tracked files.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git add .
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Commit all staged changes.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git commit -m &lt;span style="color:#e6db74">&amp;#34;commit message&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Amend last commit&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git commit --amend -m &lt;span style="color:#e6db74">&amp;#34;new message&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Reset everything to last commit.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git reset --hard
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Delete all untracked files and directories.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git clean -df
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Undo local modifications to all files.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git checkout -- .
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Show non-staged changes.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git diff
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Show staged changes.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git diff --staged
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Save the current changes&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git stash
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List all the stashed changes.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git stash list
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Pop the last stashed change.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git stash pop
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Drop the last stashed change.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git stash drop
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Show commit logs.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git log
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Show pretty commit logs.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git log --color --graph --pretty&lt;span style="color:#f92672">=&lt;/span>format:&lt;span style="color:#e6db74">&amp;#39;%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)&amp;lt;%an&amp;gt;%Creset&amp;#39;&lt;/span> --abbrev-commit --first-parent
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="tags">Tags&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List all tags.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git tag
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Get remote tags.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git pull --tags
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Switch to an existing tag.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git checkout tags
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create a new tag.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git tag -a tag_name -m &lt;span style="color:#e6db74">&amp;#34;tag message&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Push all tags to the remote repo.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git push --tags
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="remote">Remote&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create a new alias for a git URL.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git remote add &amp;lt;alias&amp;gt; &amp;lt;url&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Show the remote repo names you have.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git remote
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Show the remote repo names and urls you have.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git remote -v
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Remote a remove repo.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git remote rm &amp;lt;remote-repo-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Change the URL of the origin alias.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git remote set-url origin &lt;span style="color:#f92672">[&lt;/span>git-url&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="submodule">Submodule&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create a submodule.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git submodule add &amp;lt;git-repo-url&amp;gt; &amp;lt;submodule-dir-path&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Init submodules.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git submodule init
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Update and init submodules recursively.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git submodule update -i -r
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Set a new url for the submodule.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git submodule set-url -- &amp;lt;submodule-dir-path&amp;gt; &amp;lt;new-git-repo-url&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Sync all submodules.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git submodule sync
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Execute command for each submodule.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git submodule foreach --recursive &amp;lt;command&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="aliases">Aliases&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>git config --global alias.co checkout
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git config --global alias.br branch
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git config --global alias.ci commit
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>git config --global alias.st status
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div></description></item><item><title>Cheatsheets: Kubernetes Cheatsheet</title><link>https://devmemo.gitlab.io/cheatsheets/kubernetes/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://devmemo.gitlab.io/cheatsheets/kubernetes/</guid><description>
&lt;h2 id="kubectl-commands">Kubectl Commands&lt;/h2>
&lt;h3 id="annotate">Annotate&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Annotate a resource with the key and value.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl annotate &amp;lt;resource-type&amp;gt; &amp;lt;resource-name&amp;gt; &amp;lt;key&amp;gt;&lt;span style="color:#f92672">=&lt;/span>&amp;lt;value&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Override annotation of a resource.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl annotate --overwrite &amp;lt;resource-type&amp;gt; &amp;lt;resource-name&amp;gt; &amp;lt;key&amp;gt;&lt;span style="color:#f92672">=&lt;/span>&amp;lt;value&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Annotate annotation of all resources.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl annotate --all &amp;lt;resource-type&amp;gt; &amp;lt;resource-name&amp;gt; &amp;lt;key&amp;gt;&lt;span style="color:#f92672">=&lt;/span>&amp;lt;value&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Remove an annotation from a resource.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl annotate &amp;lt;resource-type&amp;gt; &amp;lt;resource-name&amp;gt; &amp;lt;key&amp;gt;-
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="api-version">Api Version&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Show API versions.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl api-versions
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="apply">Apply&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Apply the config in &amp;lt;config-file&amp;gt;.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl apply -f &amp;lt;config-file&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Another way to apply the config in &amp;lt;config-file&amp;gt;.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>cat &amp;lt;config-file&amp;gt; | kubectl apply -f -
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Apply the config string.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>echo &lt;span style="color:#e6db74">&amp;#39;&amp;lt;config-string&amp;gt;&amp;#39;&lt;/span> | kubectl apply -f -
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="attach">Attach&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Attach to the first container in a pod.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl attach &amp;lt;pod-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Attach to a container in a pod.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl attach &amp;lt;pod-name&amp;gt; -c &amp;lt;container-name&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="autoscale">Autoscale&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Auto scale a deployment.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl autoscale deployment &amp;lt;deployment-name&amp;gt; --min&lt;span style="color:#f92672">=&lt;/span>&amp;lt;min-pods-number&amp;gt; --max&lt;span style="color:#f92672">=&lt;/span>&amp;lt;max-pods-number&amp;gt; --cpu-percent&lt;span style="color:#f92672">=&lt;/span>&amp;lt;cpu-percentage&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Auto scale a replication controller.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl autoscale rc &amp;lt;rc-name&amp;gt; --min&lt;span style="color:#f92672">=&lt;/span>&amp;lt;min-pods-number&amp;gt; --max&lt;span style="color:#f92672">=&lt;/span>&amp;lt;max-pods-number&amp;gt; --cpu-percent&lt;span style="color:#f92672">=&lt;/span>&amp;lt;cpu-percentage&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="cluster-info">Cluster Info&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Display addresses of the master and services.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl cluster-info
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Dump current cluster state to stdout.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl cluster-info dump
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Dump current cluster state to &amp;lt;output-directory&amp;gt;.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl cluster-info dump --output-directory&lt;span style="color:#f92672">=&lt;/span>&amp;lt;output-directory&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="config">Config&lt;/h3>
&lt;h4 id="view-config">View Config&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># View kubectl config.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl config view
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h4 id="context">Context&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Display the current-context.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl config current-context
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Get available contexts.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl config get-contexts
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Sets the current-context in a kubeconfig file.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl config use-context &amp;lt;context-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Set cluster field for context.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl config set-context &amp;lt;context-name&amp;gt; --cluster&lt;span style="color:#f92672">=&lt;/span>&amp;lt;cluster-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Set user field for context.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl config set-context &amp;lt;context-name&amp;gt; --user&lt;span style="color:#f92672">=&lt;/span>&amp;lt;username&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Set namespace field for context.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl config set-context &amp;lt;context-name&amp;gt; --namespace&lt;span style="color:#f92672">=&lt;/span>&amp;lt;namespace&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h4 id="cluster">Cluster&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Set only the server field on the cluster entry without touching other values.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl config set-cluster &amp;lt;cluster-name&amp;gt; --server&lt;span style="color:#f92672">=&lt;/span>&amp;lt;server-endpoint&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Embed certificate authority data for the cluster entry.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl config set-cluster &amp;lt;cluster-name&amp;gt; --certificate-authority&lt;span style="color:#f92672">=&lt;/span>&amp;lt;crt-file-path&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Enable/disable cert checking for the cluster entry.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl config set-cluster &amp;lt;cluster-name&amp;gt; --insecure-skip-tls-verify&lt;span style="color:#f92672">=&lt;/span>&amp;lt;boolean&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h4 id="credentials">Credentials&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Set only the &amp;#34;client-key&amp;#34; field without touching other values.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl config set-credentials &amp;lt;username&amp;gt; --client-key&lt;span style="color:#f92672">=&lt;/span>&amp;lt;client-key-filepath&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Set the authentication username and password for user.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl config set-credentials &amp;lt;username&amp;gt; --username&lt;span style="color:#f92672">=&lt;/span>&amp;lt;auth-username&amp;gt; --password&lt;span style="color:#f92672">=&lt;/span>&amp;lt;auth-password&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Embed client certificate data for user.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl config set-credentials &amp;lt;username&amp;gt; --client-certificate&lt;span style="color:#f92672">=&lt;/span>&amp;lt;crt-filepath&amp;gt; --embed-certs&lt;span style="color:#f92672">=&lt;/span>true
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h4 id="others">Others&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Sets an individual value in a kubeconfig file.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl config set &amp;lt;property-name&amp;gt; &amp;lt;property-value&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Unsets an individual value in a kubeconfig file.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl config unset &amp;lt;property-name&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="cordon--uncordon">Cordon &amp;amp; Uncordon&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Mark node as unschedulable.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl cordon &amp;lt;node-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Mark node as schedulable.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl uncordon &amp;lt;node-name&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="create">Create&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create a resource by filename or stdin&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl create -f &amp;lt;filename&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Another way to create the config in &amp;lt;config-file&amp;gt;.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>cat pod.yaml | kubectl create -f -
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create a resource with the config string.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>echo &lt;span style="color:#e6db74">&amp;#39;&amp;lt;config-string&amp;gt;&amp;#39;&lt;/span> | kubectl create -f -
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="delete">Delete&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Delete a resource.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl delete &amp;lt;resource-type&amp;gt; &amp;lt;resource-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Delete a resource matching a label.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl delete &amp;lt;resource-type&amp;gt; -l &amp;lt;label-key&amp;gt;&lt;span style="color:#f92672">=&lt;/span>&amp;lt;label-value&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Delete all resources of certain type.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl delete &amp;lt;resource-type&amp;gt; --all
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="describe">Describe&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Describe a resource.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl describe &amp;lt;resource-type&amp;gt;/&amp;lt;resource-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Describe a resource matching a label.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl describe &amp;lt;resource-type&amp;gt; -l &amp;lt;label-key&amp;gt;&lt;span style="color:#f92672">=&lt;/span>&amp;lt;label-value&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="drain">Drain&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Drain a node for maintenance.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl drain &amp;lt;node-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Drain a node for maintenance forcefully.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl drain &amp;lt;node-name&amp;gt; --force
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Drain a node with a grace period.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl drain &amp;lt;node-name&amp;gt; --grace-period&lt;span style="color:#f92672">=&lt;/span>&amp;lt;grace-period-in-seconds&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="edit">Edit&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Edit a resource.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl edit &amp;lt;resource-type&amp;gt;/&amp;lt;resource-name&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="exec">Exec&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Execute a command in a container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl exec &amp;lt;pod-name&amp;gt; &lt;span style="color:#f92672">[&lt;/span>-c &amp;lt;container-name&amp;gt;&lt;span style="color:#f92672">]&lt;/span> -- &amp;lt;command&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="explain">Explain&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Explain a resource.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl explain &amp;lt;resource-type&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="expose">Expose&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create a service for a replica, which maps the container &amp;lt;target-port&amp;gt; to &amp;lt;port&amp;gt;.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl expose rc &amp;lt;rc-name&amp;gt; --port&lt;span style="color:#f92672">=&lt;/span>&amp;lt;port&amp;gt; --target-port&lt;span style="color:#f92672">=&lt;/span>&amp;lt;target-port&amp;gt; &lt;span style="color:#f92672">[&lt;/span>--name&lt;span style="color:#f92672">=&lt;/span>&amp;lt;name&amp;gt;&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create a second service based on an existing service, which maps the container &amp;lt;target-port&amp;gt; to &amp;lt;port&amp;gt;.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl expose service &amp;lt;service-name&amp;gt; --port&lt;span style="color:#f92672">=&lt;/span>&amp;lt;port&amp;gt; --target-port&lt;span style="color:#f92672">=&lt;/span>&amp;lt;target-port&amp;gt; &lt;span style="color:#f92672">[&lt;/span>--name&lt;span style="color:#f92672">=&lt;/span>&amp;lt;name&amp;gt;&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="get">Get&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List all resources of type &amp;lt;resource-type&amp;gt;.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl get &amp;lt;resource-type&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List all resources of type &amp;lt;resource-type&amp;gt; in json.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl get &amp;lt;resource-type&amp;gt; -o json
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List all resources of type &amp;lt;resource-type&amp;gt; with more details.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl get &amp;lt;resource-type&amp;gt; -o wide
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List the resource with name of &amp;lt;resource-name&amp;gt;.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl get &amp;lt;resource-type&amp;gt; &amp;lt;resource-name&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="label">Label&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Label a resource with the key and value.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl label &amp;lt;resource-type&amp;gt; &amp;lt;resource-name&amp;gt; &amp;lt;key&amp;gt;&lt;span style="color:#f92672">=&lt;/span>&amp;lt;value&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Override annotation of a resource.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl label --overwrite &amp;lt;resource-type&amp;gt; &amp;lt;resource-name&amp;gt; &amp;lt;key&amp;gt;&lt;span style="color:#f92672">=&lt;/span>&amp;lt;value&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Label annotation of all resource.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl label --all &amp;lt;resource-type&amp;gt; &amp;lt;resource-name&amp;gt; &amp;lt;key&amp;gt;&lt;span style="color:#f92672">=&lt;/span>&amp;lt;value&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Remove an annotation of a resource.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl label &amp;lt;resource-type&amp;gt; &amp;lt;resource-name&amp;gt; &amp;lt;key&amp;gt;-
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="logs">Logs&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Show logs for the first container of a pod.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl logs &amp;lt;pod-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Show logs for a container in the pod.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl logs &amp;lt;pod-name&amp;gt; -c &amp;lt;container-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Show of a previous terminated pod.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl logs &amp;lt;pod-name&amp;gt; -p
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Follow the log of a pod.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl logs &amp;lt;pod-name&amp;gt; -f
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Show last few lines of logs in a pod.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl logs &amp;lt;pod-name&amp;gt; --tail&lt;span style="color:#f92672">=&lt;/span>&amp;lt;number-of-lines&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Show all logs for a pod since &amp;lt;time-duration&amp;gt; (e.g., 5m, 1h).&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl logs --since&lt;span style="color:#f92672">=&lt;/span>&amp;lt;time-duration&amp;gt; &amp;lt;pod-name&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="patch">Patch&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Patch a node. An example of json-string is {&amp;#34;spec&amp;#34;:{&amp;#34;unschedulable&amp;#34;:true}}.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl patch node &amp;lt;node-name&amp;gt; -p &lt;span style="color:#e6db74">&amp;#39;&amp;lt;json-string&amp;gt;&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="port-forward">Port Forward&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Forward container&amp;#39;s &amp;lt;port&amp;gt; to host&amp;#39;s &amp;lt;port&amp;gt;.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl port-forward &amp;lt;pod-name&amp;gt; &amp;lt;port&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Forward container&amp;#39;s &amp;lt;container-port&amp;gt; to host&amp;#39;s &amp;lt;host-port&amp;gt;.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl port-forward &amp;lt;pod-name&amp;gt; &amp;lt;host-port&amp;gt;:&amp;lt;container-port&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Forward container&amp;#39;s &amp;lt;container-port&amp;gt; to host&amp;#39;s random port.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl port-forward &amp;lt;pod-name&amp;gt; :&amp;lt;container-port&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Forward container&amp;#39;s &amp;lt;container-port&amp;gt; to host&amp;#39;s random port.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl port-forward &amp;lt;pod-name&amp;gt; 0:&amp;lt;container-port&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="proxy">Proxy&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Run a proxy on port &amp;lt;proxy-port&amp;gt;.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl proxy --port&lt;span style="color:#f92672">=&lt;/span>&amp;lt;proxy-port&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Run a proxy on an arbitrary port.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl proxy --port&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#ae81ff">0&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="replace">Replace&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Replace the config in &amp;lt;config-file&amp;gt;.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl replace -f &amp;lt;config-file&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Another way to replace the config in &amp;lt;config-file&amp;gt;.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>cat &amp;lt;config-file&amp;gt; | kubectl replace -f -
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Another way to replace the config string.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>echo &lt;span style="color:#e6db74">&amp;#39;&amp;lt;config-string&amp;gt;&amp;#39;&lt;/span> | kubectl replace -f -
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="rolling-update">Rolling Update&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Rolling update pods in &amp;lt;rc-name&amp;gt; with &amp;lt;config-file&amp;gt;.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl rolling-update &amp;lt;rc-name&amp;gt; -f &amp;lt;config-file&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Another way to rolling update pods in &amp;lt;rc-name&amp;gt; with &amp;lt;config-file&amp;gt;.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>cat &amp;lt;config-file&amp;gt; | kubectl rolling-update &amp;lt;rc-name&amp;gt; -f -
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Another way to rolling update pods in &amp;lt;rc-name&amp;gt; with the config string.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>echo &lt;span style="color:#e6db74">&amp;#39;&amp;lt;config-string&amp;gt;&amp;#39;&lt;/span> | kubectl rolling-update -f -
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Update the pods in &amp;lt;rc-name&amp;gt; with a new image.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl rolling-update &amp;lt;rc-name&amp;gt; --image&lt;span style="color:#f92672">=&lt;/span>&amp;lt;image-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Abort and reverse an existing rollout in progress.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl rolling-update &amp;lt;rc-name&amp;gt; --rollback
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="rollout">Rollout&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># View the rollout history of a resource.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl rollout history &amp;lt;resource-type&amp;gt;/&amp;lt;resource-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Pause a resource rollout.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl rollout pause &amp;lt;resource-type&amp;gt;/&amp;lt;resource-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Unpause a resource rollout.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl rollout unpause &amp;lt;resource-type&amp;gt;/&amp;lt;resource-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Rollback a resource rollout.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl rollout rollback &amp;lt;resource-type&amp;gt;/&amp;lt;resource-name&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="run">Run&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Start a pod with &amp;lt;image-name&amp;gt;.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl run &amp;lt;pod-name&amp;gt; --image&lt;span style="color:#f92672">=&lt;/span>&amp;lt;image-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Start a pod with &amp;lt;image-name&amp;gt; with an environment variable KEY=VALUE.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl run &amp;lt;pod-name&amp;gt; --image&lt;span style="color:#f92672">=&lt;/span>&amp;lt;image-name&amp;gt; --env&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#e6db74">&amp;#34;KEY=VALUE&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Start a pod with &amp;lt;image-name&amp;gt;, and let the container expost &amp;lt;port&amp;gt;.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl run &amp;lt;pod-name&amp;gt; --image&lt;span style="color:#f92672">=&lt;/span>&amp;lt;image-name&amp;gt; --port&lt;span style="color:#f92672">=&lt;/span>&amp;lt;port&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Dry run. Print the corresponding API objects without creating them.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl run &amp;lt;pod-name&amp;gt; --image&lt;span style="color:#f92672">=&lt;/span>&amp;lt;image-name&amp;gt; --dry-run&lt;span style="color:#f92672">=&lt;/span>client
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Run a container interactively.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl run -it &amp;lt;pod-name&amp;gt; --image&lt;span style="color:#f92672">=&lt;/span>&amp;lt;image-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Run a container with &amp;lt;command&amp;gt;.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl run &amp;lt;pod-name&amp;gt; --image&lt;span style="color:#f92672">=&lt;/span>&amp;lt;image-name&amp;gt; -- &amp;lt;command&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="scale">Scale&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Scale a replication controller to &amp;lt;number-of-relicas&amp;gt;.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl scale --replicas&lt;span style="color:#f92672">=&lt;/span>&amp;lt;number-of-relicas&amp;gt; rc/&amp;lt;fc-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Scale a job to &amp;lt;number-of-relicas&amp;gt;.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl scale --replicas&lt;span style="color:#f92672">=&lt;/span>&amp;lt;number-of-relicas&amp;gt; job/&amp;lt;job-name&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="version">Version&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Print the client and server version information.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl version
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="resource">Resource&lt;/h2>
&lt;h3 id="common-resource-kinds">Common Resource Kinds&lt;/h3>
&lt;div class="sw-lg-table-container dark-scrollbar">
&lt;table class="sw-table" id="">
&lt;thead>
&lt;tr>
&lt;th>Name&lt;/th>
&lt;th>Shortnames&lt;/th>
&lt;th>Namespaced&lt;/th>
&lt;th>Kind&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">bindings&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">true&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">Binding&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">componentstatuses&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">cs&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">false&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">ComponentStatus&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">configmaps&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">cm&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">true&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">ConfigMap&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">endpoints&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">ep&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">true&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">Endpoints&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">events&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">ev&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">true&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">Event&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">limitranges&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">limits&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">true&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">LimitRange&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">namespaces&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">ns&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">false&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">Namespace&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">nodes&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">no&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">false&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">Node&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">persistentvolumeclaims&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">pvc&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">true&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">PersistentVolumeClaim&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">persistentvolumes&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">pv&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">false&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">PersistentVolume&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">pods&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">po&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">true&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">Pod&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">podtemplates&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">true&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">PodTemplate&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">replicationcontrollers&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">rc&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">true&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">ReplicationController&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">resourcequotas&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">quota&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">true&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">ResourceQuota&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">secrets&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">true&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">Secret&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">serviceaccounts&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">sa&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">true&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">ServiceAccount&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">services&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">svc&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">true&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">Service&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">mutatingwebhookconfigurations&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">false&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">MutatingWebhookConfiguration&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">validatingwebhookconfiguration&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">s&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">false&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">ValidatingWebhookConfiguration&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">customresourcedefinitions&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">crd,crds&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">false&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">CustomResourceDefinition&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">apiservices&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">false&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">APIService&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">controllerrevisions&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">true&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">ControllerRevision&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">daemonsets&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">ds&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">true&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">DaemonSet&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">deployments&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">deploy&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">true&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">Deployment&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">replicasets&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">rs&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">true&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">ReplicaSet&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">statefulsets&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">sts&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">true&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">StatefulSet&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">tokenreviews&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">false&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">TokenReview&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">localsubjectaccessreviews&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">true&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">LocalSubjectAccessReview&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">selfsubjectaccessreviews&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">false&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">SelfSubjectAccessReview&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">selfsubjectrulesreviews&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">false&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">SelfSubjectRulesReview&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">subjectaccessreviews&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">false&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">SubjectAccessReview&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">horizontalpodautoscalers&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">hpa&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">true&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">HorizontalPodAutoscaler&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">cronjobs&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">cj&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">true&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">CronJob&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">jobs&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">true&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">Job&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">certificatesigningrequests&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">csr&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">false&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">CertificateSigningRequest&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">leases&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">true&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">Lease&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">endpointslices&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">true&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">EndpointSlice&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">events&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">ev&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">true&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">Event&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">flowschemas&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">false&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">FlowSchema&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">prioritylevelconfigurations&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">false&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">PriorityLevelConfiguration&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">ingressclasses&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">false&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">IngressClass&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">ingresses&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">ing&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">true&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">Ingress&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">networkpolicies&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">netpol&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">true&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">NetworkPolicy&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">runtimeclasses&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">false&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">RuntimeClass&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">poddisruptionbudgets&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">pdb&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">true&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">PodDisruptionBudget&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">clusterrolebindings&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">false&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">ClusterRoleBinding&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">clusterroles&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">false&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">ClusterRole&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">rolebindings&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">true&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">RoleBinding&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">roles&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">true&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">Role&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">priorityclasses&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">pc&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">false&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">PriorityClass&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">csidrivers&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">false&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">CSIDriver&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">csinodes&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">false&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">CSINode&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">csistoragecapacities&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">true&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(40, 60%, 70%, 1)">CSIStorageCapacity&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">storageclasses&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">sc&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">false&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">StorageClass&lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">volumeattachments&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">false&lt;/span>&lt;/td>
&lt;td>&lt;span style="color:hsla(280, 60%, 70%, 1)">VolumeAttachment&lt;/span>&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/div>
&lt;ul>
&lt;li>Either the resource kind or the short name can be used as &lt;code>&amp;lt;resource-type&amp;gt;&lt;/code> in the following commands in this page.&lt;/li>
&lt;li>For any namespaced resource, the command has to be appended with &lt;code>-n &amp;lt;namespace&amp;gt;&lt;/code>.&lt;/li>
&lt;/ul>
&lt;h3 id="resource-config">Resource Config&lt;/h3>
&lt;h4 id="pod">Pod&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-yaml" data-lang="yaml">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">apiVersion&lt;/span>: &lt;span style="color:#ae81ff">v1&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">kind&lt;/span>: &lt;span style="color:#ae81ff">Pod&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">metadata&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;pod-name&amp;gt; &lt;/span> &lt;span style="color:#75715e"># e.g., nginx&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">namespace&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;namespace&amp;gt; &lt;/span> &lt;span style="color:#75715e"># e.g., nginx&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">spec&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">containers&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;container-name&amp;gt; &lt;/span> &lt;span style="color:#75715e"># e.g., nginx&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">image&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;image-name&amp;gt; &lt;/span> &lt;span style="color:#75715e"># e.g., nginx:1.14.2&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">ports&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#f92672">containerPort&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;container-port&amp;gt;&lt;/span> &lt;span style="color:#75715e"># e.g., 80&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Use &lt;code>kubectl get pod &amp;lt;pod-name&amp;gt; -n &amp;lt;namespace&amp;gt; -o yaml&lt;/code> to see more configurable fields.&lt;/p>
&lt;h4 id="deployment">Deployment&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-yaml" data-lang="yaml">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">apiVersion&lt;/span>: &lt;span style="color:#ae81ff">apps/v1&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">kind&lt;/span>: &lt;span style="color:#ae81ff">Deployment&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">metadata&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;deployment-name&amp;gt; &lt;/span> &lt;span style="color:#75715e"># e.g., nginx-deployment&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">namespace&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;namespace&amp;gt; &lt;/span> &lt;span style="color:#75715e"># e.g., nginx&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">labels&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">app&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;deployment-app-label&amp;gt; &lt;/span> &lt;span style="color:#75715e"># e.g., nginx&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">spec&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">replicas&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;number-of-replicas&amp;gt; &lt;/span> &lt;span style="color:#75715e"># e.g., 2&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">selector&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">matchLabels&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">app&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;app-selector&amp;gt; &lt;/span> &lt;span style="color:#75715e"># e.g., nginx&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">template&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">metadata&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">labels&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">app&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;pod-app-label&amp;gt; &lt;/span> &lt;span style="color:#75715e"># e.g., nginx&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">spec&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">containers&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;container-name&amp;gt; &lt;/span> &lt;span style="color:#75715e"># e.g., nginx&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">image&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;image-name&amp;gt; &lt;/span> &lt;span style="color:#75715e"># nginx:1.14.2&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">ports&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#f92672">containerPort&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;container-port&amp;gt;&lt;/span> &lt;span style="color:#75715e"># e.g., 80&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Use &lt;code>kubectl get deployment &amp;lt;deployment-name&amp;gt; -n &amp;lt;namespace&amp;gt; -o yaml&lt;/code> to see more configurable fields.&lt;/p>
&lt;h4 id="daemonset">Daemonset&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-yaml" data-lang="yaml">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">apiVersion&lt;/span>: &lt;span style="color:#ae81ff">apps/v1&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">kind&lt;/span>: &lt;span style="color:#ae81ff">DaemonSet&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">metadata&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;ds-name&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">namespace&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;namespace&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">spec&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">selector&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">matchLabels&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">&amp;lt;label-key&amp;gt;&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;label-value&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">template&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">metadata&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">labels&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">&amp;lt;label-key&amp;gt;&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;label-value&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">spec&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">containers&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;container-name&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">image&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;image-name&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Use &lt;code>kubectl get ds &amp;lt;ds-name&amp;gt; -n &amp;lt;namespace&amp;gt; -o yaml&lt;/code> to see more configurable fields.&lt;/p>
&lt;h4 id="job">Job&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-yaml" data-lang="yaml">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">apiVersion&lt;/span>: &lt;span style="color:#ae81ff">batch/v1&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">kind&lt;/span>: &lt;span style="color:#ae81ff">Job&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">metadata&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;job-name&amp;gt; &lt;/span> &lt;span style="color:#75715e"># e.g., pi&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">namespace&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;namespace&amp;gt; &lt;/span> &lt;span style="color:#75715e"># e.g., pi&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">spec&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">template&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">spec&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">containers&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;container-name&amp;gt;&lt;/span> &lt;span style="color:#75715e"># e.g., pi&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">image&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;image-name&amp;gt; &lt;/span> &lt;span style="color:#75715e"># e.g., perl:5.34.0&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">command&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;cmd-args&amp;gt; &lt;/span> &lt;span style="color:#75715e"># e.g., [&amp;#34;perl&amp;#34;, &amp;#34;-Mbignum=bpi&amp;#34;, &amp;#34;-wle&amp;#34;, &amp;#34;print bpi(2000)&amp;#34;]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">restartPolicy&lt;/span>: &lt;span style="color:#ae81ff">Never&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Use &lt;code>kubectl get job &amp;lt;job-name&amp;gt; -n &amp;lt;namespace&amp;gt; -o yaml&lt;/code> to see more configurable fields.&lt;/p>
&lt;h4 id="cronjob">Cronjob&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-yaml" data-lang="yaml">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">apiVersion&lt;/span>: &lt;span style="color:#ae81ff">batch/v1&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">kind&lt;/span>: &lt;span style="color:#ae81ff">CronJob&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">metadata&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;cronjob-name&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">namespace&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;namespace&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">spec&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">schedule&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;schedule&amp;gt; &lt;/span> &lt;span style="color:#75715e"># e.g., every five minutes &amp;#34;*/5 * * * *&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">jobTemplate&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">spec&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">template&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">spec&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">containers&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;container-name&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">image&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;image-name&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">imagePullPolicy&lt;/span>: &lt;span style="color:#ae81ff">IfNotPresent&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">command&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;cmd-args&amp;gt;&lt;/span> &lt;span style="color:#75715e"># e.g., [&amp;#34;/bin/sh&amp;#34;, &amp;#34;-c&amp;#34;, &amp;#34;date; echo Hello from the Kubernetes cluster&amp;#34;]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">restartPolicy&lt;/span>: &lt;span style="color:#ae81ff">OnFailure&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Use &lt;code>kubectl get cronjob &amp;lt;cronjob-name&amp;gt; -n &amp;lt;namespace&amp;gt; -o yaml&lt;/code> to see more configurable fields.&lt;/p>
&lt;h4 id="service">Service&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-yaml" data-lang="yaml">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># ClusterIP Service.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">apiVersion&lt;/span>: &lt;span style="color:#ae81ff">v1&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">kind&lt;/span>: &lt;span style="color:#ae81ff">Service&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">metadata&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;service-name&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">namespace&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;namespace&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">spec&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">type&lt;/span>: &lt;span style="color:#ae81ff">ClusterIP &lt;/span> &lt;span style="color:#75715e"># the ClusterIP service type. ClusterIP service is only accessible from within the cluster.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">selector&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">&amp;lt;selector-label-key&amp;gt;&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;selector-label-value&amp;gt;&lt;/span> &lt;span style="color:#75715e"># selector for the target pods.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">ports&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#f92672">protocol&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;protocol&amp;gt; &lt;/span> &lt;span style="color:#75715e"># the protocol the service uses, e.g., TCP&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">port&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;port&amp;gt; &lt;/span> &lt;span style="color:#75715e"># the port exposed to the cluster, e.g., 80&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">targetPort&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;target-port&amp;gt; &lt;/span> &lt;span style="color:#75715e"># the port requests are sent to in the pod, e.g., 9736&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># NodePort Service.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">apiVersion&lt;/span>: &lt;span style="color:#ae81ff">v1&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">kind&lt;/span>: &lt;span style="color:#ae81ff">Service&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">metadata&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;service-name&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">namespace&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;namespace&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">spec&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">type&lt;/span>: &lt;span style="color:#ae81ff">NodePort &lt;/span> &lt;span style="color:#75715e"># the NodePort service type. The service can be accessed from outside via your host node.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">selector&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">&amp;lt;selector-label-key&amp;gt;&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;selector-label-value&amp;gt;&lt;/span> &lt;span style="color:#75715e"># selector for the target pods.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">ports&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#f92672">port&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;port&amp;gt; &lt;/span> &lt;span style="color:#75715e"># the port exposed to the cluster, e.g., 80&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">targetPort&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;target-port&amp;gt; &lt;/span> &lt;span style="color:#75715e"># the port requests are sent to in the pod, e.g., 9736&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">nodePort&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;node-port&amp;gt; &lt;/span> &lt;span style="color:#75715e"># the port the host node is exposed to the outside network, e.g. 30010&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># LoadBalancer Service&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">apiVersion&lt;/span>: &lt;span style="color:#ae81ff">v1&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">kind&lt;/span>: &lt;span style="color:#ae81ff">Service&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">metadata&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;service-name&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">namespace&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;namespace&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">spec&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">type&lt;/span>: &lt;span style="color:#ae81ff">LoadBalancer&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">selector&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">&amp;lt;selector-label-key&amp;gt;&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;selector-label-value&amp;gt;&lt;/span> &lt;span style="color:#75715e"># selector for the target pods.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">ports&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#f92672">protocol&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;protocol&amp;gt; &lt;/span> &lt;span style="color:#75715e"># the protocol the service uses, e.g., TCP&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">port&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;port&amp;gt; &lt;/span> &lt;span style="color:#75715e"># the port exposed to the cluster, e.g., 80&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">targetPort&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;target-port&amp;gt; &lt;/span> &lt;span style="color:#75715e"># the port requests are sent to in the pod, e.g., 9736&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Use &lt;code>kubectl get service &amp;lt;service-name&amp;gt; -n &amp;lt;namespace&amp;gt; -o yaml&lt;/code> to see more configurable fields.&lt;/p>
&lt;h4 id="service-account">Service Account&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-yaml" data-lang="yaml">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">kind&lt;/span>: &lt;span style="color:#ae81ff">ServiceAccount&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">apiVersion&lt;/span>: &lt;span style="color:#ae81ff">v1&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">metadata&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;sa-name&amp;gt; &lt;/span> &lt;span style="color:#75715e"># the service account name&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">namespace&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;namespace&amp;gt;&lt;/span> &lt;span style="color:#75715e"># the namespace&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Use &lt;code>kubectl get sa &amp;lt;sa-name&amp;gt; -n &amp;lt;namespace&amp;gt; -o yaml&lt;/code> to see more configurable fields.&lt;/p>
&lt;h4 id="role--clusterrole">Role &amp;amp; ClusterRole&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-yaml" data-lang="yaml">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Role&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">apiVersion&lt;/span>: &lt;span style="color:#ae81ff">rbac.authorization.k8s.io/v1&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">kind&lt;/span>: &lt;span style="color:#ae81ff">Role&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">metadata&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;role-name&amp;gt; &lt;/span> &lt;span style="color:#75715e"># the role name&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">namespace&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;namespace&amp;gt;&lt;/span> &lt;span style="color:#75715e"># the namespace&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">rules&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">apiGroups&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;api-group&amp;gt;&lt;/span> &lt;span style="color:#75715e"># e.g., [&amp;#34;&amp;#34;]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">resources&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;resources&amp;gt;&lt;/span> &lt;span style="color:#75715e"># e.g., [&amp;#34;pods&amp;#34;]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">verbs&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;verbs&amp;gt; &lt;/span> &lt;span style="color:#75715e"># e.g., [&amp;#34;get&amp;#34;, &amp;#34;watch&amp;#34;, &amp;#34;list&amp;#34;]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># ClusterRole&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">apiVersion&lt;/span>: &lt;span style="color:#ae81ff">rbac.authorization.k8s.io/v1&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">kind&lt;/span>: &lt;span style="color:#ae81ff">ClusterRole&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">metadata&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;clusterrole-name&amp;gt;&lt;/span> &lt;span style="color:#75715e"># the role name&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">rules&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">apiGroups&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;api-group&amp;gt; &lt;/span> &lt;span style="color:#75715e"># e.g., [&amp;#34;&amp;#34;]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">resources&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;resources&amp;gt; &lt;/span> &lt;span style="color:#75715e"># e.g., [&amp;#34;pods&amp;#34;]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">verbs&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;verbs&amp;gt; &lt;/span> &lt;span style="color:#75715e"># e.g., [&amp;#34;get&amp;#34;, &amp;#34;watch&amp;#34;, &amp;#34;list&amp;#34;]&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Use &lt;code>kubectl get role &amp;lt;role-name&amp;gt; -n &amp;lt;namespace&amp;gt; -o yaml&lt;/code> or &lt;code>kubectl get clusterrole &amp;lt;clusterrole-name&amp;gt; -o yaml&lt;/code> to see more configurable fields.&lt;/p>
&lt;h4 id="rolebinding--clusterrolebinding">RoleBinding &amp;amp; ClusterRoleBinding&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-yaml" data-lang="yaml">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># RoleBinding&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">apiVersion&lt;/span>: &lt;span style="color:#ae81ff">rbac.authorization.k8s.io/v1&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">kind&lt;/span>: &lt;span style="color:#ae81ff">RoleBinding&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">metadata&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;rolebinding-name&amp;gt;&lt;/span> &lt;span style="color:#75715e"># the role binding name&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">namespace&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;namespace&amp;gt; &lt;/span> &lt;span style="color:#75715e"># the namespace of the role binding&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">subjects&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">kind&lt;/span>: &lt;span style="color:#ae81ff">ServiceAccount&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;sa-name&amp;gt; &lt;/span> &lt;span style="color:#75715e"># the sa name&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">namespace&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;namespace&amp;gt; &lt;/span> &lt;span style="color:#75715e"># the namespace of the sa&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">roleRef&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">kind&lt;/span>: &lt;span style="color:#ae81ff">Role&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;role-name&amp;gt; &lt;/span> &lt;span style="color:#75715e"># the Role name&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">apiGroup&lt;/span>: &lt;span style="color:#ae81ff">rbac.authorization.k8s.io&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># ClusterRoleBinding&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">apiVersion&lt;/span>: &lt;span style="color:#ae81ff">rbac.authorization.k8s.io/v1&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">kind&lt;/span>: &lt;span style="color:#ae81ff">ClusterRoleBinding&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">metadata&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;clusterrolebinding-name&amp;gt;&lt;/span> &lt;span style="color:#75715e"># the role binding name&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">subjects&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>- &lt;span style="color:#f92672">kind&lt;/span>: &lt;span style="color:#ae81ff">ServiceAccount&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;sa-name&amp;gt; &lt;/span> &lt;span style="color:#75715e"># the sa name&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">namespace&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;namespace&amp;gt; &lt;/span> &lt;span style="color:#75715e"># the namespace of the sa&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">roleRef&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">kind&lt;/span>: &lt;span style="color:#ae81ff">ClusterRole&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;clusterrole-name&amp;gt; &lt;/span> &lt;span style="color:#75715e"># the cluster role name&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">apiGroup&lt;/span>: &lt;span style="color:#ae81ff">rbac.authorization.k8s.io&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Use &lt;code>kubectl get rolebinding &amp;lt;rolebinding-name&amp;gt; -n &amp;lt;namespace&amp;gt; -o yaml&lt;/code> or &lt;code>kubectl get clusterrolebinding &amp;lt;clusterrolebinding-name&amp;gt; -o yaml&lt;/code> to see more configurable fields.&lt;/p>
&lt;h4 id="configmap">ConfigMap&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-yaml" data-lang="yaml">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">apiVersion&lt;/span>: &lt;span style="color:#ae81ff">v1&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">kind&lt;/span>: &lt;span style="color:#ae81ff">ConfigMap&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">metadata&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;cm-name&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">namespace&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;namespace&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">data&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">&amp;lt;key1&amp;gt;&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;value1&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">&amp;lt;key2&amp;gt;&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;value2&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Use &lt;code>kubectl get cm &amp;lt;cm-name&amp;gt; -n &amp;lt;namespace&amp;gt; -o yaml&lt;/code> to see more configurable fields.&lt;/p>
&lt;h4 id="secret">Secret&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create a secret from command line.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl create secret generic &amp;lt;secret-name&amp;gt; --from-literal&lt;span style="color:#f92672">=&lt;/span>&amp;lt;key1&amp;gt;&lt;span style="color:#f92672">=&lt;/span>&amp;lt;value1&amp;gt; --from-literal&lt;span style="color:#f92672">=&lt;/span>&amp;lt;key2&amp;gt;&lt;span style="color:#f92672">=&lt;/span>&amp;lt;value2&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Get the secret in json.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl get secret &amp;lt;secret-name&amp;gt; -o jsonpath&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#e6db74">&amp;#39;{.data}&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Decode &amp;lt;key&amp;gt; in the secret.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kubectl get secret &amp;lt;secret-name&amp;gt; -o jsonpath&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#e6db74">&amp;#39;{.data.&amp;lt;key&amp;gt;}&amp;#39;&lt;/span> | base64 --decode
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Use &lt;code>kubectl get secret &amp;lt;secret-name&amp;gt; -n &amp;lt;namespace&amp;gt; -o yaml&lt;/code> to see more configurable fields.&lt;/p>
&lt;h4 id="persistentvolumeclaim">PersistentVolumeClaim&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-yaml" data-lang="yaml">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">apiVersion&lt;/span>: &lt;span style="color:#ae81ff">v1&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">kind&lt;/span>: &lt;span style="color:#ae81ff">PersistentVolumeClaim&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">metadata&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">name&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;pvc-name&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">namespace&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;namespace&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">spec&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">accessModes&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#ae81ff">&amp;lt;access-mode&amp;gt; &lt;/span> &lt;span style="color:#75715e"># e.g., ReadWriteOnce, ReadOnlyMany, ReadWriteMany, ReadWriteOncePod&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">volumeMode&lt;/span>: &lt;span style="color:#ae81ff">Filesystem&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">resources&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">requests&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">storage&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;storage-size&amp;gt;&lt;/span> &lt;span style="color:#75715e"># e.g., 10Gi&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">storageClassName&lt;/span>: &lt;span style="color:#ae81ff">&amp;lt;sc-name&amp;gt;&lt;/span> &lt;span style="color:#75715e"># e.g., standard&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Use &lt;code>kubectl get pvc &amp;lt;pvc-name&amp;gt; -n &amp;lt;namespace&amp;gt; -o yaml&lt;/code> to see more configurable fields.&lt;/p></description></item><item><title>Cheatsheets: Linux Cheatsheet</title><link>https://devmemo.gitlab.io/cheatsheets/linux/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://devmemo.gitlab.io/cheatsheets/linux/</guid><description>
&lt;h2 id="commands">Commands&lt;/h2>
&lt;h3 id="file--directory-basics">File &amp;amp; Directory Basics&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List files in the current directory.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>ls
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List files in the current directory with details.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>ls -alh
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Change current directory.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>cd
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Show current directory.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pwd
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create an empty directory.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>mkdir
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Copy file.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>cp &amp;lt;src-filename&amp;gt; &amp;lt;dst-filename&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Copy directory.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>cp -Rf &amp;lt;src-dirname&amp;gt; &amp;lt;dst-dirname&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Move file or directory.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>mv &amp;lt;src-filename&amp;gt; &amp;lt;dst-filename&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Remove file.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>rm &amp;lt;filename&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Remove an empty directory.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>rmdir &amp;lt;dirname&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Remove a non-empty directory.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>rm -Rf &amp;lt;dirname&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create a new empty file.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>touch &amp;lt;filename&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Find files.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>find . -iname &amp;lt;filename-regex&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Find all files.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>find . -type f
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="file-content">File Content&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Print file content.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>cat &amp;lt;filename&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Search texts in file.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>grep &amp;lt;text&amp;gt; &amp;lt;filename&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Search regex pattern in file.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>grep -e &amp;lt;regex-pattern&amp;gt; &amp;lt;filename&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Show first few lines in file.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>head -n &amp;lt;line-count&amp;gt; &amp;lt;filename&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Show last few lines in file.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tail -n &amp;lt;line-count&amp;gt; &amp;lt;filename&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Follow file changes.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tail -f &amp;lt;filename&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="file-access">File Access&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Change file access. An example of access-code is 600.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>chmod &amp;lt;access-code&amp;gt; &amp;lt;filename&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Change file owner.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>chown &amp;lt;owner&amp;gt;&lt;span style="color:#f92672">[&lt;/span>:&amp;lt;group&amp;gt;&lt;span style="color:#f92672">]&lt;/span> &amp;lt;filename&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="package--compress">Package &amp;amp; Compress&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Pack a directory into a tar file.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tar -cvf &amp;lt;tar-filename&amp;gt;.tar &amp;lt;dirname&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Unpack a tar file.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tar -xvf &amp;lt;tar-filename&amp;gt;.tar
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Zip a file.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>zip &amp;lt;zip-filename&amp;gt; file1 file2 file3 ...
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Unzip a file.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>unzip &amp;lt;zip-filename&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="disk">Disk&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Show free disk spaces for each block device.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>df -alh
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Display the disk usage of files under the current directory.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>du -h ./*
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Show block devices.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>lsblk
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="process">Process&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List process.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>ps aux
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Kill a process with SIGTERM.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kill &amp;lt;pid&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Kill a process with SIGKILL (the strongest killing signal).&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>kill -9 &amp;lt;pid&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List all processes in a terminal UI.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>top
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List all processes in an advanced terminal UI.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>htop
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="networking">Networking&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Download data from url.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>curl &amp;lt;url&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Download data from url to local file.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>curl &amp;lt;url&amp;gt; -o &amp;lt;filename&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List all ports opened.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>netstat -an
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List network configuration.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>ifconfig
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Ping network connectivity.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>ping
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="user">User&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Add a new user.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo adduser &amp;lt;username&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Delete a user.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo deluser &amp;lt;username&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="packages">Packages&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Install packages on ubuntu or debian.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo apt install &amp;lt;package-name&amp;gt;&lt;span style="color:#f92672">[=&lt;/span>&amp;lt;version&amp;gt;&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Uninstall packages from ubuntu or debian.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo apt-get --purge remove &amp;lt;package-name&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="system">System&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Display information about your system.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>uname -a
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Display Linux release information&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>lsb_release -a
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Show hostname.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>hostname
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Reboot system now.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo reboot now
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Shutdown system now.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo shutdown -h now
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="services">Services&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List all units.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>systemctl list-units
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List all service units.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>systemctl list-units --type&lt;span style="color:#f92672">=&lt;/span>service
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Start a service.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo systemctl start &amp;lt;service-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Restart a service.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo systemctl restart &amp;lt;service-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Stop a service.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo systemctl stop &amp;lt;service-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Check a service status.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo systemctl status &amp;lt;service-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Enable a service to start as system starts.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo systemctl enable &amp;lt;service-name&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="configuration-files">Configuration Files&lt;/h2>
&lt;div class="sw-lg-table-container dark-scrollbar">
&lt;table class="sw-key-value-table" id="">
&lt;thead>
&lt;tr>
&lt;th>File Path&lt;/th>
&lt;th>Scope&lt;/th>
&lt;th>File Use&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>&lt;code>/boot/grub/grub.cfg&lt;/code>&lt;/td>
&lt;td>global&lt;/td>
&lt;td>the generated grub file&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/bash.bashrc&lt;/code>&lt;/td>
&lt;td>global&lt;/td>
&lt;td>global config file for bash&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/default/grub&lt;/code>&lt;/td>
&lt;td>global&lt;/td>
&lt;td>config used by update-grub to generate /boot/grub/grub.cfg&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/dhcp/dhclient.conf&lt;/code>&lt;/td>
&lt;td>global&lt;/td>
&lt;td>DCHP client configs&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/fstab&lt;/code>&lt;/td>
&lt;td>global&lt;/td>
&lt;td>startup mount configs&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/hostname&lt;/code>&lt;/td>
&lt;td>global&lt;/td>
&lt;td>hostname&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/hosts&lt;/code>&lt;/td>
&lt;td>global&lt;/td>
&lt;td>static dhcp entries&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/mime.types&lt;/code>&lt;/td>
&lt;td>global&lt;/td>
&lt;td>MIME types and filename extensions associated with them&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/motd&lt;/code>&lt;/td>
&lt;td>global&lt;/td>
&lt;td>log in prompt message&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/profile&lt;/code>&lt;/td>
&lt;td>global&lt;/td>
&lt;td>commands for the login shell to execute&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/resolv.conf&lt;/code>&lt;/td>
&lt;td>global&lt;/td>
&lt;td>DNS server config&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/sudoers&lt;/code>&lt;/td>
&lt;td>global&lt;/td>
&lt;td>configs for sudoers&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/timezone&lt;/code>&lt;/td>
&lt;td>global&lt;/td>
&lt;td>local timezone&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>~/.bashrc&lt;/code>&lt;/td>
&lt;td>user&lt;/td>
&lt;td>bash startup config for non-login shell&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>~/.editor&lt;/code>&lt;/td>
&lt;td>user&lt;/td>
&lt;td>sets the default editor for the user&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>~/.gitconfig&lt;/code>&lt;/td>
&lt;td>user&lt;/td>
&lt;td>sets the default configs for git&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>~/.profile&lt;/code>&lt;/td>
&lt;td>user&lt;/td>
&lt;td>shell startup commands&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>~/.ssh/config&lt;/code>&lt;/td>
&lt;td>user&lt;/td>
&lt;td>user ssh config&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>~/.vimrc&lt;/code>&lt;/td>
&lt;td>user&lt;/td>
&lt;td>vim config&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>~/.emacs&lt;/code>&lt;/td>
&lt;td>user&lt;/td>
&lt;td>emacs config&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>~/.xinitrc&lt;/code>&lt;/td>
&lt;td>user&lt;/td>
&lt;td>xmanager config&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/div></description></item><item><title>Cheatsheets: Markdown Cheatsheet</title><link>https://devmemo.gitlab.io/cheatsheets/markdown/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://devmemo.gitlab.io/cheatsheets/markdown/</guid><description>
&lt;h2 id="headers">Headers&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-text" data-lang="text">&lt;span style="display:flex;">&lt;span># h1
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>## h2
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>### h3
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>#### h4
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>##### h5
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>###### h6
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>Header 1
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>========
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>Header 2
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>--------
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="quote">Quote&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-text" data-lang="text">&lt;span style="display:flex;">&lt;span>&amp;gt; Quote
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&amp;gt; &amp;gt; Nested Quote
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="lists">Lists&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-text" data-lang="text">&lt;span style="display:flex;">&lt;span>* unordered item 1
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>* unordered item 2
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> * unordered item 2.1
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> * unordered item 2.2
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>1. ordered item 1
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>2. ordered item 2
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> 1. ordered item 2.1
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> 2. ordered item 2.2
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>* [ ] Unordered item with checkbox off
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>* [x] Unordered item with checkbox on
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="tables">Tables&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-text" data-lang="text">&lt;span style="display:flex;">&lt;span>| column 1 | column 2 |
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>|----------|----------|
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>| Cell 1 | Cell 2 |
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>| Cell 3 | Cell 4 |
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>| Text left-aligned column | Text center-aligned column | Text right-aligned column |
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>|:-------------------------|:--------------------------:|--------------------------:|
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>| Cell 1 | Cell 2 | Cell 3 |
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>| Cell 4 | Cell 5 | Cell 6 |
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="text-highlights">Text Highlights&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-text" data-lang="text">&lt;span style="display:flex;">&lt;span>*italic*
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>**bold**
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>~~struck out~~
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="code">Code&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-text" data-lang="text">&lt;span style="display:flex;">&lt;span>`inline code`
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>```
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>code block
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>```
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>```python
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>print(&amp;#34;this is a python code block&amp;#34;)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>```
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>```cpp
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>printf(&amp;#34;this is a c++ code block&amp;#34;);
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>```
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="links">Links&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-text" data-lang="text">&lt;span style="display:flex;">&lt;span>[devmemo](https://devmemo.gitlab.io)
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="images">Images&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-text" data-lang="text">&lt;span style="display:flex;">&lt;span>![Image Title](/path/to/your/image)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>![Image Title](https://your-image-url)
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="horizontal-line">Horizontal Line&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-text" data-lang="text">&lt;span style="display:flex;">&lt;span>---
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>***
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>___
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="backslack-escapes">Backslack Escapes&lt;/h2>
&lt;div class="sw-table-container dark-scrollbar">
&lt;table class="sw-key-value-table" id="">
&lt;thead>
&lt;tr>
&lt;th>Character&lt;/th>
&lt;th>Description&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>\&lt;/td>
&lt;td>backslash&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>`&lt;/td>
&lt;td>backtick&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>*&lt;/td>
&lt;td>asterisk&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>_&lt;/td>
&lt;td>underscore&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>{}&lt;/td>
&lt;td>curly braces&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>[]&lt;/td>
&lt;td>square brackets&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>()&lt;/td>
&lt;td>parentheses&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>#&lt;/td>
&lt;td>hash mark&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>+&lt;/td>
&lt;td>plus sign&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>-&lt;/td>
&lt;td>minus sign (hyphen)&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>.&lt;/td>
&lt;td>dot&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>!&lt;/td>
&lt;td>exclamation mark&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/div></description></item><item><title>Cheatsheets: Minikube Cheatsheet</title><link>https://devmemo.gitlab.io/cheatsheets/minikube/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://devmemo.gitlab.io/cheatsheets/minikube/</guid><description>
&lt;h2 id="installation">Installation&lt;/h2>
&lt;h3 id="prerequisite">Prerequisite&lt;/h3>
&lt;p>Install &lt;a href="https://devmemo.gitlab.io/cheatsheets/docker/">docker&lt;/a> before minikube.&lt;/p>
&lt;h3 id="install-on-linux">Install On Linux&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Install using binary.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo install minikube-linux-amd64 /usr/local/bin/minikube
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Install minikube using debian package.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube_latest_amd64.deb
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo dpkg -i minikube_latest_amd64.deb
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Install minikube using rpm package.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-latest.x86_64.rpm
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo rpm -Uvh minikube-latest.x86_64.rpm
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="install-on-mac">Install On Mac&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Install using binary on amd64.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-darwin-amd64
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo install minikube-darwin-amd64 /usr/local/bin/minikube
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Install using binary on arm.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-darwin-arm64
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo install minikube-darwin-arm64 /usr/local/bin/minikube
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Install with homebrew on either arm or amd64.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>brew install minikube
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="kubectl">Kubectl&lt;/h2>
&lt;h3 id="run-kubectl-command">Run Kubectl Command&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Run kubectl command.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>minikube kubectl -- &amp;lt;kubectl commands&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="set-up-kubectl-alias">Set Up Kubectl Alias&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Set up kubectl alias for easy use.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>alias kubectl&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#e6db74">&amp;#34;minikube kubectl --&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="cluster">Cluster&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Start minikube cluster.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>minikube start
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Pause Kubernetes without impacting deployed applications.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>minikube pause
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Unpause a paused instance.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>minikube unpause
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Halt the cluster.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>minikube stop
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Delete the cluster.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>minikube delete
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Upgrade your cluster.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>minikube start --kubernetes-version&lt;span style="color:#f92672">=&lt;/span>latest
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Start another cluster.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>minikube start -p cluster2
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Show the current active profile.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>minikube profile
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List all profiles.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>minikube profile list
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Switch the active profile.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>minikube profile &amp;lt;profile-name&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="addons">Addons&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List all addons.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>minikube addons list
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Enable an addon.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>minikube addons enable &amp;lt;addon-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Enable an addon at the cluster startup time.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>minikube start --addons &amp;lt;addon-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># If an addon exposes a browser endpoint, you can quickly open it with.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>minikube addons open &amp;lt;addon-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Disable an addon.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>minikube addons disable &amp;lt;addon-name&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="configs">Configs&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Set the memory limit (requires a restart).&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>minikube config set memory &amp;lt;size-in-bytes&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Set the cpu limit (requires a restart).&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>minikube config set cpus &amp;lt;number-of-cores&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Get the current config for a field (e.g., memory or cpu).&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>minikube config &amp;lt;field-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Show the current config.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>minikube config view
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="dashboard">Dashboard&lt;/h2>
&lt;h3 id="minikube-on-local">Minikube On Local&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Show the dashboard (if you are not using Minikube locally).&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>minikube dashboard
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="minikube-on-remote">Minikube On Remote&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Get a dashboard url.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>minikube dashboard --url
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Forward your port.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>minikube kubectl proxy -- --address&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#e6db74">&amp;#39;0.0.0.0&amp;#39;&lt;/span> --disable-filter&lt;span style="color:#f92672">=&lt;/span>true
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Then your minikube dashboard can be accessed from the following url.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># (The following command can run from your Mac laptop. If you are not using a Mac laptop, copy the url to your browser)&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>open &lt;span style="color:#e6db74">&amp;#34;http://{your-minikube-host-ip}:8001/api/v1/namespaces/kubernetes-dashboard/services/http:kubernetes-dashboard:/proxy/&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div></description></item><item><title>Cheatsheets: Mongodb Cheatsheet</title><link>https://devmemo.gitlab.io/cheatsheets/mongodb/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://devmemo.gitlab.io/cheatsheets/mongodb/</guid><description>
&lt;h2 id="install">Install&lt;/h2>
&lt;h3 id="ubuntu-2204-jammy">ubuntu 22.04 (Jammy)&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | sudo apt-key add -
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>echo &lt;span style="color:#e6db74">&amp;#34;deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/6.0 multiverse&amp;#34;&lt;/span> | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo apt-get update &lt;span style="color:#f92672">&amp;amp;&amp;amp;&lt;/span> sudo apt-get install -y mongodb-org
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="ubuntu-2004-focal">ubuntu 20.04 (Focal)&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | sudo apt-key add -
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>echo &lt;span style="color:#e6db74">&amp;#34;deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/6.0 multiverse&amp;#34;&lt;/span> | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo apt-get update &lt;span style="color:#f92672">&amp;amp;&amp;amp;&lt;/span> sudo apt-get install -y mongodb-org
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="ubuntu-1804-bionic">ubuntu 18.04 (Bionic)&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | sudo apt-key add -
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>echo &lt;span style="color:#e6db74">&amp;#34;deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/6.0 multiverse&amp;#34;&lt;/span> | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo apt-get update &lt;span style="color:#f92672">&amp;amp;&amp;amp;&lt;/span> sudo apt-get install -y mongodb-org
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="ubuntu-1604-xenial">ubuntu 16.04 (Xenial)&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | sudo apt-key add -
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>echo &lt;span style="color:#e6db74">&amp;#34;deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/6.0 multiverse&amp;#34;&lt;/span> | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo apt-get update &lt;span style="color:#f92672">&amp;amp;&amp;amp;&lt;/span> sudo apt-get install -y mongodb-org
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="debian-11-bullseye">debian 11 (Bullseye)&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | sudo apt-key add -
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>echo &lt;span style="color:#e6db74">&amp;#34;deb http://repo.mongodb.org/apt/debian bullseye/mongodb-org/6.0 main&amp;#34;&lt;/span> | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo apt-get update &lt;span style="color:#f92672">&amp;amp;&amp;amp;&lt;/span> sudo apt-get install -y mongodb-org
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="debian-10-buster">debian 10 (Buster)&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | sudo apt-key add -
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>echo &lt;span style="color:#e6db74">&amp;#34;deb http://repo.mongodb.org/apt/debian buster/mongodb-org/6.0 main&amp;#34;&lt;/span> | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo apt-get update &lt;span style="color:#f92672">&amp;amp;&amp;amp;&lt;/span> sudo apt-get install -y mongodb-org
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="debian-9-stretch">debian 9 (Stretch)&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | sudo apt-key add -
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>echo &lt;span style="color:#e6db74">&amp;#34;deb http://repo.mongodb.org/apt/debian stretch/mongodb-org/6.0 main&amp;#34;&lt;/span> | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo apt-get update &lt;span style="color:#f92672">&amp;amp;&amp;amp;&lt;/span> sudo apt-get install -y mongodb-org
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="uninstall">Uninstall&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Stop mongodb.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo service mongod stop
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Remove mongodb.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo apt-get purge mongodb-org*
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Remove data directory.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo rm -r /var/log/mongodb
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo rm -r /var/lib/mongodb
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="mongodb-service-managament">Mongodb Service Managament&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Start mongodb.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo systemctl start mongod
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># If you see error like this &amp;#34;Failed to start mongod.service: Unit mongod.service not found.&amp;#34;, run&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo systemctl daemon-reload
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Enable mongodb as a service which starts after reboot.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo systemctl enable mongod
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Stop monogdb service.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo systemctl stop mongod
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Check mongodb service status.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo systemctl status mongod
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Restart mongodb.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>sudo systemctl restart mongod
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Ping mongodb.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>mongo --eval &lt;span style="color:#e6db74">&amp;#39;db.runCommand({ connectionStatus: 1 })&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Connect to mongodb service from mongodb shell.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>mongosh
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="db-shell-commands">DB Shell Commands&lt;/h2>
&lt;h3 id="db-commands">DB Commands&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-cpp" data-lang="cpp">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Show all databases.
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>show dbs
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Show the current database.
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>db
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Create or switch database. (Replace db_name with yours)
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>use db_name
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Drop the current database.
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>db.dropDatabase()
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="collection-commands">Collection Commands&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-cpp" data-lang="cpp">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Create collection. (Replace col_name with yours)
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>db.createCollection(col_name)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Show collections.
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>show collections
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Insert one row. (Replace json with yours)
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>db.col_name.insert({
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> key1: &lt;span style="color:#e6db74">&amp;#34;value1&amp;#34;&lt;/span>,
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> key2: &lt;span style="color:#e6db74">&amp;#34;value2&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>})
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Insert many rows. (Replace json with yours)
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>db.col_name.insertMany([
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> {
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> key1: &lt;span style="color:#e6db74">&amp;#34;value1_1&amp;#34;&lt;/span>,
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> key2: &lt;span style="color:#e6db74">&amp;#34;value1_2&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> },
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> {
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> key1: &lt;span style="color:#e6db74">&amp;#34;value2_1&amp;#34;&lt;/span>,
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> key2: &lt;span style="color:#e6db74">&amp;#34;value2_2&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> }
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Get all rows.
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>db.col_name.find()
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Get all rows formated.
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>db.col_name.find().pretty()
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Find one row.
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>db.col_name.findOne({
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> key1: &lt;span style="color:#e6db74">&amp;#34;value1&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>})
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Find rows with specific fields.
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>db.col_name.find({ key1: &lt;span style="color:#e6db74">&amp;#34;value1&amp;#34;&lt;/span> }, {
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> key1: &lt;span style="color:#ae81ff">1&lt;/span>,
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> key2: &lt;span style="color:#ae81ff">1&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>})
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Find rows.
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>db.col_name.find({
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> key1: &lt;span style="color:#e6db74">&amp;#34;value1&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>})
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Update one row.
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>db.col_name.updateOne(
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> { key1: &lt;span style="color:#e6db74">&amp;#34;value1&amp;#34;&lt;/span> },
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> {
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#e6db74">&amp;#34;$set&amp;#34;&lt;/span>&lt;span style="color:#f92672">:&lt;/span> {
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> key1: &lt;span style="color:#e6db74">&amp;#34;value1&amp;#34;&lt;/span>,
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> key2: &lt;span style="color:#e6db74">&amp;#34;value3&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> }
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> },
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> {
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> upsert: true
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> }
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Update many rows.
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>db.col_name.updateMany(
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> { key1: &lt;span style="color:#e6db74">&amp;#34;value1&amp;#34;&lt;/span> },
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> {
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#e6db74">&amp;#34;$set&amp;#34;&lt;/span>&lt;span style="color:#f92672">:&lt;/span> {
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> key1: &lt;span style="color:#e6db74">&amp;#34;value1&amp;#34;&lt;/span>,
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> key2: &lt;span style="color:#e6db74">&amp;#34;value3&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> }
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> },
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> {
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> upsert: true
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> }
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Delete row.
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>db.col_name.remove({
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> key1: &lt;span style="color:#e6db74">&amp;#34;value1&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>})
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Sort rows.
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>db.col_name.find().sort({ key1: &lt;span style="color:#ae81ff">1&lt;/span> })
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Count rows.
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>db.col_name.find().count()
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Limit rows.
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>db.col_name.find().limit(&lt;span style="color:#ae81ff">2&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// For each.
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>db.col_name.find().forEach(function(obj) {
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> print(&lt;span style="color:#e6db74">&amp;#34;Object: &amp;#34;&lt;/span> &lt;span style="color:#f92672">+&lt;/span> obj.key1)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>})
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Create index.
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>db.col_name.createIndex({
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> key1: &lt;span style="color:#ae81ff">1&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>})
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="files">Files&lt;/h2>
&lt;div class="sw-lg-table-container dark-scrollbar">
&lt;table class="sw-key-value-table" id="">
&lt;thead>
&lt;tr>
&lt;th>File Path&lt;/th>
&lt;th>File Use&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>&lt;code>/etc/mongod.conf&lt;/code>&lt;/td>
&lt;td>default config file path&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/var/log/mongodb/mongod.log&lt;/code>&lt;/td>
&lt;td>default log file path&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/div></description></item><item><title>Cheatsheets: Npm Cheatsheet</title><link>https://devmemo.gitlab.io/cheatsheets/npm/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://devmemo.gitlab.io/cheatsheets/npm/</guid><description>
&lt;h2 id="commands">Commands&lt;/h2>
&lt;h3 id="init-project">Init Project&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Initialize a project.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>npm init
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Instantly initialize a project.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>npm init --yes
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="install-package">Install Package&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Install all packages defined in package.json.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>npm install
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># An alias of npm install.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>npm i
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Install a package.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>npm install &amp;lt;package-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Install a package. (Same as npm install &amp;lt;package-name&amp;gt; after npm 5.0.0)&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>npm install &amp;lt;package-name&amp;gt; --save
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Install a package as a dev dependency.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>npm install &amp;lt;package-name&amp;gt; --dev-save
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Install a package globally.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>npm install &amp;lt;package-name&amp;gt; -g
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Install a package of a specific version.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>npm install &amp;lt;package-name&amp;gt;@&amp;lt;version&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Install via github repo.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>npm install &amp;lt;github-repo-url&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Install via a file path.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>npm install &amp;lt;file-path&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Install via tar package over https, e.g., https://site.com/archive.tgz.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>npm install &amp;lt;http-tar-package-url&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="uninstall">Uninstall&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Remove a package.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>npm rm &amp;lt;package-name&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="list-and-view-package">List And View Package&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List installed packages.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>npm list
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># An alias of npm list.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>npm ls
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List globally installed packages.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>npm list -g
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List outdated packages.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>npm outdated
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List the latest versions of a package.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>npm view &amp;lt;package-name&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="run">Run&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Run a script defined in package.json.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>npm run &amp;lt;script-name&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div></description></item><item><title>Cheatsheets: Proxmox Cheatsheet</title><link>https://devmemo.gitlab.io/cheatsheets/proxmox/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://devmemo.gitlab.io/cheatsheets/proxmox/</guid><description>
&lt;h2 id="commands">Commands&lt;/h2>
&lt;h3 id="vm-management">VM Management&lt;/h3>
&lt;h4 id="basics">Basics&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># list VMs&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm list
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create or restore a virtual machine.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm create &amp;lt;vmid&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create or restore a virtual machine with core, memory, disks specified.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm create &amp;lt;vmid&amp;gt; --name &amp;lt;vm-name&amp;gt; --cores &amp;lt;number-of-cores&amp;gt; --memory &amp;lt;memory-size-in-bytes&amp;gt; --scsi0 file&lt;span style="color:#f92672">=&lt;/span>&amp;lt;vg-name&amp;gt;:&amp;lt;size-in-gb&amp;gt; --cdrom local:&amp;lt;iso-name&amp;gt; --net0 virtio,bridge&lt;span style="color:#f92672">=&lt;/span>&amp;lt;bridge-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># start a VM&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm start &amp;lt;vmid&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Suspend virtual machine.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm suspend &amp;lt;vmid&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># shutdown a VM&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm shutdown &amp;lt;vmid&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># reboot a VM&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm reboot &amp;lt;vmid&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># reset a VM&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm reset &amp;lt;vmid&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># stop a VM&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm stop &amp;lt;vmid&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Destroy the VM and all used/owned volumes.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Removes any VM specific permissions and firewall rules&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm destroy &amp;lt;vmid&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Enter Qemu Monitor interface.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm monitor &amp;lt;vmid&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Get the virtual machine configuration with both current and pending values.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm pending &amp;lt;vmid&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Send key event to virtual machine.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm sendkey &amp;lt;vmid&amp;gt; &amp;lt;key&amp;gt; &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Show command line which is used to start the VM (debug info).&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm showcmd &amp;lt;vmid&amp;gt; &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Unlock the VM.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm unlock &amp;lt;vmid&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Clone a VM&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm clone &amp;lt;vmid&amp;gt; &amp;lt;newid&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Clone a VM in full clone mode and also set the name.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm clone &amp;lt;vmid&amp;gt; &amp;lt;newid&amp;gt; --full --name &amp;lt;name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Migrate a VM&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm migrate &amp;lt;vmid&amp;gt; &amp;lt;target-node&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Show VM status&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm status &amp;lt;vmid&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Clean up resources for a VM&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm cleanup &amp;lt;vmid&amp;gt; &amp;lt;clean-shutdown&amp;gt; &amp;lt;guest-requested&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create a Template.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm template &amp;lt;vmid&amp;gt; &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Set virtual machine options (synchrounous API)&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm set &amp;lt;vmid&amp;gt; &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h4 id="cloudinit">Cloudinit&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Get automatically generated cloudinit config.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm cloudinit dump &amp;lt;vmid&amp;gt; &amp;lt;type&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Get the cloudinit configuration with both current and pending values.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm cloudinit pending &amp;lt;vmid&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Regenerate and change cloudinit config drive.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm cloudinit update &amp;lt;vmid&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h4 id="disk">Disk&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Import an external disk image as an unused disk in a VM.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># The image format has to be supported by qemu-img(1).&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm disk import &amp;lt;vmid&amp;gt; &amp;lt;source&amp;gt; &amp;lt;storage&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Move volume to different storage or to a different VM.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm disk move &amp;lt;vmid&amp;gt; &amp;lt;disk&amp;gt; &lt;span style="color:#f92672">[&lt;/span>&amp;lt;storage&amp;gt;&lt;span style="color:#f92672">]&lt;/span> &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Rescan all storages and update disk sizes and unused disk images.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm disk rescan &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Extend volume size.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm disk resize &amp;lt;vmid&amp;gt; &amp;lt;disk&amp;gt; &amp;lt;size&amp;gt; &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Unlink/delete disk images.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm disk unlink &amp;lt;vmid&amp;gt; --idlist &amp;lt;string&amp;gt; &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># rescan volumes&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm rescan
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h4 id="snapshot">Snapshot&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List all snapshots.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm listsnapshot &amp;lt;vmid&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Snapshot a VM&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm snapshot &amp;lt;vmid&amp;gt; &amp;lt;snapname&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Delete a snapshot.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm delsnapshot &amp;lt;vmid&amp;gt; &amp;lt;snapname&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Rollback a snapshot&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm rollback &amp;lt;vmid&amp;gt; &amp;lt;snapname&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Open a terminal using a serial device&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># (The VM need to have a serial device configured, for example serial0: socket)&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm terminal &amp;lt;vmid&amp;gt; &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Proxy VM VNC traffic to stdin/stdout&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm vncproxy &amp;lt;vmid&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h4 id="others">Others&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Execute Qemu Guest Agent commands.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm guest cmd &amp;lt;vmid&amp;gt; &amp;lt;command&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Executes the given command via the guest agent&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm guest exec &amp;lt;vmid&amp;gt; &lt;span style="color:#f92672">[&lt;/span>&amp;lt;extra-args&amp;gt;&lt;span style="color:#f92672">]&lt;/span> &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Gets the status of the given pid started by the guest-agent&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm guest exec-status &amp;lt;vmid&amp;gt; &amp;lt;pid&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Sets the password for the given user to the given password&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>qm guest passwd &amp;lt;vmid&amp;gt; &amp;lt;username&amp;gt; &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="pv-vg--lv-management">PV, VG &amp;amp; LV Management&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create a PV&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pvcreate &amp;lt;disk-device-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Remove a PV&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pvremove &amp;lt;disk-device-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List all PVs&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pvs
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create a VG&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>vgcreate &amp;lt;vg-name&amp;gt; &amp;lt;disk-device-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Remove a VG&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>vgremove &amp;lt;vg-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List all VGs&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>vgs
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create a LV&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>lvcreate -L &amp;lt;lv-size&amp;gt; -n &amp;lt;lv-name&amp;gt; &amp;lt;vg-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Remove a LV&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>lvremove &amp;lt;vg-name&amp;gt;/&amp;lt;lv-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List all LVs&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>lvs
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="storage-management">Storage Management&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create a new storage.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pvesm add &amp;lt;type&amp;gt; &amp;lt;storage&amp;gt; &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Allocate disk images.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pvesm alloc &amp;lt;storage&amp;gt; &amp;lt;vmid&amp;gt; &amp;lt;filename&amp;gt; &amp;lt;size&amp;gt; &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Delete volume&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pvesm free &amp;lt;volume&amp;gt; &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Delete storage configuration.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pvesm remove &amp;lt;storage&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List storage content.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pvesm list &amp;lt;storage&amp;gt; &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># An alias for pvesm scan lvm.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pvesm lvmscan
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># An alias for pvesm scan lvmthin.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pvesm lvmthinscan
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List local LVM volume groups.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pvesm scan lvm
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List local LVM Thin Pools.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pvesm scan lvmthin &amp;lt;vg&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Get status for all datastores.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pvesm status &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="template-management">Template Management&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># list all templates&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pveam available
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># list all templates&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pveam list &amp;lt;storage&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Download appliance templates&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pveam download &amp;lt;storage&amp;gt; &amp;lt;template&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Remove a template.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pveam remove &amp;lt;template-path&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Update Container Template Database.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pveam update
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="container-management">Container Management&lt;/h3>
&lt;h4 id="basics-1">Basics&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List containers&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pct list
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create or restore a container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pct create &amp;lt;vmid&amp;gt; &amp;lt;ostemplate&amp;gt; &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Start the container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pct start &amp;lt;vmid&amp;gt; &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create a container clone/copy&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pct clone &amp;lt;vmid&amp;gt; &amp;lt;newid&amp;gt; &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Suspend the container. This is experimental.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pct suspend &amp;lt;vmid&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Resume the container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pct resume &amp;lt;vmid&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Stop the container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># This will abruptly stop all processes running in the container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pct stop &amp;lt;vmid&amp;gt; &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Shutdown the container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># This will trigger a clean shutdown of the container, see lxc-stop(1) for details.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pct shutdown &amp;lt;vmid&amp;gt; &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Destroy the container (also delete all uses files).&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pct destroy &amp;lt;vmid&amp;gt; &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Show CT status.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pct status &amp;lt;vmid&amp;gt; &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Migrate the container to another node. Creates a new migration task.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pct migrate &amp;lt;vmid&amp;gt; &amp;lt;target&amp;gt; &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Get container configuration.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pct config &amp;lt;vmid&amp;gt; &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Print the list of assigned CPU sets.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pct cpusets
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Get container configuration, including pending changes.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pct pending &amp;lt;vmid&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Reboot the container by shutting it down, and starting it again. Applies pending changes.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pct reboot &amp;lt;vmid&amp;gt; &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create or restore a container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pct restore &amp;lt;vmid&amp;gt; &amp;lt;ostemplate&amp;gt; &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Set container options.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pct set &amp;lt;vmid&amp;gt; &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create a Template.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pct template &amp;lt;vmid&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Unlock the VM.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pct unlock &amp;lt;vmid&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h4 id="disk-1">Disk&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Get the container’s current disk usage.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pct df &amp;lt;vmid&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Run a filesystem check (fsck) on a container volume.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pct fsck &amp;lt;vmid&amp;gt; &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Run fstrim on a chosen CT and its mountpoints.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pct fstrim &amp;lt;vmid&amp;gt; &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Mount the container’s filesystem on the host.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># This will hold a lock on the container and is meant for emergency maintenance only&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># as it will prevent further operations on the container other than start and stop.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pct mount &amp;lt;vmid&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Move a rootfs-/mp-volume to a different storage or to a different container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pct move-volume &amp;lt;vmid&amp;gt; &amp;lt;volume&amp;gt; &lt;span style="color:#f92672">[&lt;/span>&amp;lt;storage&amp;gt;&lt;span style="color:#f92672">]&lt;/span> &lt;span style="color:#f92672">[&lt;/span>&amp;lt;target-vmid&amp;gt;&lt;span style="color:#f92672">]&lt;/span> &lt;span style="color:#f92672">[&lt;/span>&amp;lt;target-volume&amp;gt;&lt;span style="color:#f92672">]&lt;/span> &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Unmount the container’s filesystem.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pct unmount &amp;lt;vmid&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Resize a container mount point.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pct resize &amp;lt;vmid&amp;gt; &amp;lt;disk&amp;gt; &amp;lt;size&amp;gt; &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Rescan all storages and update disk sizes and unused disk images.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pct rescan &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Launch a console for the specified container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pct console &amp;lt;vmid&amp;gt; &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Launch a shell for the specified container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pct enter &amp;lt;vmid&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Launch a command inside the specified container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pct exec &amp;lt;vmid&amp;gt; &lt;span style="color:#f92672">[&lt;/span>&amp;lt;extra-args&amp;gt;&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Copy a file from the container to the local system.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pct pull &amp;lt;vmid&amp;gt; &amp;lt;path&amp;gt; &amp;lt;destination&amp;gt; &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Copy a local file to the container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pct push &amp;lt;vmid&amp;gt; &amp;lt;file&amp;gt; &amp;lt;destination&amp;gt; &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h4 id="snapshot-1">Snapshot&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Snapshot a container.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pct snapshot &amp;lt;vmid&amp;gt; &amp;lt;snapname&amp;gt; &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List all snapshots.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pct listsnapshot &amp;lt;vmid&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Rollback LXC state to specified snapshot.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pct rollback &amp;lt;vmid&amp;gt; &amp;lt;snapname&amp;gt; &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Delete a LXC snapshot.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pct delsnapshot &amp;lt;vmid&amp;gt; &amp;lt;snapname&amp;gt; &lt;span style="color:#f92672">[&lt;/span>OPTIONS&lt;span style="color:#f92672">]&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="web-gui">Web GUI&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Restart web GUI&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>service pveproxy restart
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="important-filedir-path">Important File/Dir Path&lt;/h2>
&lt;h3 id="pve">PVE&lt;/h3>
&lt;div class="sw-lg-table-container dark-scrollbar">
&lt;table class="sw-headless-two-col-table" id="">
&lt;thead>
&lt;tr>
&lt;th>&lt;/th>
&lt;th>&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>&lt;code>/etc/pve/authkey.pub&lt;/code>&lt;/td>
&lt;td>Public key used by the ticket system&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/ceph.conf&lt;/code>&lt;/td>
&lt;td>Ceph configuration file (note: /etc/ceph/ceph.conf is a symbolic link to this)&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/corosync.conf&lt;/code>&lt;/td>
&lt;td>Corosync cluster configuration file (prior to Proxmox VE 4.x, this file was called cluster.conf)&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/datacenter.cfg&lt;/code>&lt;/td>
&lt;td>Proxmox VE data center-wide configuration (keyboard layout, proxy, &amp;hellip;)&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/domains.cfg&lt;/code>&lt;/td>
&lt;td>Proxmox VE authentication domains&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/firewall/cluster.fw&lt;/code>&lt;/td>
&lt;td>Firewall configuration applied to all nodes&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/firewall/&amp;lt;NAME&amp;gt;.fw&lt;/code>&lt;/td>
&lt;td>Firewall configuration for individual nodes&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/firewall/&amp;lt;VMID&amp;gt;.fw&lt;/code>&lt;/td>
&lt;td>Firewall configuration for VMs and containers&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/ha/crm_commands&lt;/code>&lt;/td>
&lt;td>Displays HA operations that are currently being carried out by the CRM&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/ha/manager_status&lt;/code>&lt;/td>
&lt;td>JSON-formatted information regarding HA services on the cluster&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/ha/resources.cfg&lt;/code>&lt;/td>
&lt;td>Resources managed by high availability, and their current state&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/nodes/&amp;lt;NAME&amp;gt;/config&lt;/code>&lt;/td>
&lt;td>Node-specific configuration&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/nodes/&amp;lt;NAME&amp;gt;/lxc/&amp;lt;VMID&amp;gt;.conf&lt;/code>&lt;/td>
&lt;td>VM configuration data for LXC containers&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/nodes/&amp;lt;NAME&amp;gt;/openvz/&lt;/code>&lt;/td>
&lt;td>Prior to PVE 4.0, used for container configuration data (deprecated, removed soon)&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/nodes/&amp;lt;NAME&amp;gt;/pve-ssl.key&lt;/code>&lt;/td>
&lt;td>Private SSL key for pve-ssl.pem&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/nodes/&amp;lt;NAME&amp;gt;/pve-ssl.pem&lt;/code>&lt;/td>
&lt;td>Public SSL certificate for web server (signed by cluster CA)&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/nodes/&amp;lt;NAME&amp;gt;/pveproxy-ssl.key&lt;/code>&lt;/td>
&lt;td>Private SSL key for pveproxy-ssl.pem (optional)&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/nodes/&amp;lt;NAME&amp;gt;/pveproxy-ssl.pem&lt;/code>&lt;/td>
&lt;td>Public SSL certificate (chain) for web server (optional override for pve-ssl.pem)&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/nodes/&amp;lt;NAME&amp;gt;/qemu-server/&amp;lt;VMID&amp;gt;.conf&lt;/code>&lt;/td>
&lt;td>VM configuration data for KVM VMs&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/priv/authkey.key&lt;/code>&lt;/td>
&lt;td>Private key used by ticket system&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/priv/authorized_keys&lt;/code>&lt;/td>
&lt;td>SSH keys of cluster members for authentication&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/priv/ceph*&lt;/code>&lt;/td>
&lt;td>Ceph authentication keys and associated capabilities&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/priv/known_hosts&lt;/code>&lt;/td>
&lt;td>SSH keys of the cluster members for verification&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/priv/lock/*&lt;/code>&lt;/td>
&lt;td>Lock files used by various services to ensure safe cluster-wide operations&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/priv/pve-root-ca.key&lt;/code>&lt;/td>
&lt;td>Private key of cluster CA&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/priv/shadow.cfg&lt;/code>&lt;/td>
&lt;td>Shadow password file for PVE Realm users&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/priv/storage/&amp;lt;STORAGE-ID&amp;gt;.pw&lt;/code>&lt;/td>
&lt;td>Contains the password of a storage in plain text&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/priv/tfa.cfg&lt;/code>&lt;/td>
&lt;td>Base64-encoded two-factor authentication configuration&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/priv/token.cfg&lt;/code>&lt;/td>
&lt;td>API token secrets of all tokens&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/pve-root-ca.pem&lt;/code>&lt;/td>
&lt;td>Public certificate of cluster CA&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/pve-www.key&lt;/code>&lt;/td>
&lt;td>Private key used for generating CSRF tokens&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/sdn/*&lt;/code>&lt;/td>
&lt;td>Shared configuration files for Software Defined Networking (SDN)&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/status.cfg&lt;/code>&lt;/td>
&lt;td>Proxmox VE external metrics server configuration&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/storage.cfg&lt;/code>&lt;/td>
&lt;td>Proxmox VE storage configuration&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/user.cfg&lt;/code>&lt;/td>
&lt;td>Proxmox VE access control configuration (users/groups/&amp;hellip;)&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/virtual-guest/cpu-models.conf&lt;/code>&lt;/td>
&lt;td>For storing custom CPU models&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/vzdump.cron&lt;/code>&lt;/td>
&lt;td>Cluster-wide vzdump backup-job schedule&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/div>
&lt;h3 id="debug">Debug&lt;/h3>
&lt;div class="sw-lg-table-container dark-scrollbar">
&lt;table class="sw-headless-two-col-table" id="">
&lt;thead>
&lt;tr>
&lt;th>&lt;/th>
&lt;th>&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>&lt;code>/etc/pve/.version&lt;/code>&lt;/td>
&lt;td>file versions (to detect file modifications)&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/.members&lt;/code>&lt;/td>
&lt;td>Info about cluster members&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/.vmlist&lt;/code>&lt;/td>
&lt;td>List of all VMs&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/.clusterlog&lt;/code>&lt;/td>
&lt;td>Cluster log (last 50 entries)&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/pve/.rrd&lt;/code>&lt;/td>
&lt;td>RRD data (most recent entries)&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/div>
&lt;h3 id="openvz-section">OpenVZ Section&lt;/h3>
&lt;div class="sw-table-container dark-scrollbar">
&lt;table class="sw-headless-two-col-table" id="">
&lt;thead>
&lt;tr>
&lt;th>&lt;/th>
&lt;th>&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>&lt;code>/etc/vz/conf/xxx.conf&lt;/code>&lt;/td>
&lt;td>config&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/var/lib/vz/root/xxx&lt;/code>&lt;/td>
&lt;td>data&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/var/lib/vz/template/cache&lt;/code>&lt;/td>
&lt;td>template&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/var/lib/vz/dump&lt;/code>&lt;/td>
&lt;td>snapshot&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/etc/vz/vz.conf&lt;/code>&lt;/td>
&lt;td>OpenVZ config&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/div>
&lt;h3 id="kvm-section">KVM Section&lt;/h3>
&lt;div class="sw-table-container dark-scrollbar">
&lt;table class="sw-headless-two-col-table" id="">
&lt;thead>
&lt;tr>
&lt;th>&lt;/th>
&lt;th>&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>&lt;code>/var/lib/vz/images/xxx&lt;/code>&lt;/td>
&lt;td>data&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/var/lib/vz/template/iso&lt;/code>&lt;/td>
&lt;td>template&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/var/lib/vz/dump&lt;/code>&lt;/td>
&lt;td>snapshot&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/div>
&lt;h3 id="lxc-section">LXC Section&lt;/h3>
&lt;div class="sw-table-container dark-scrollbar">
&lt;table class="sw-headless-two-col-table" id="">
&lt;thead>
&lt;tr>
&lt;th>&lt;/th>
&lt;th>&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>&lt;code>/var/lib/lxc/xxx/config&lt;/code>&lt;/td>
&lt;td>config&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/var/lib/vz/images/xxx&lt;/code>&lt;/td>
&lt;td>data&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/var/lib/vz/template/cache&lt;/code>&lt;/td>
&lt;td>template&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>/var/lib/vz/dump&lt;/code>&lt;/td>
&lt;td>snapshot&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/div></description></item><item><title>Cheatsheets: Rust Cheatsheet</title><link>https://devmemo.gitlab.io/cheatsheets/rust/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://devmemo.gitlab.io/cheatsheets/rust/</guid><description>
&lt;h2 id="installation">Installation&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>sudo apt update &lt;span style="color:#f92672">&amp;amp;&amp;amp;&lt;/span> sudo apt install cargo -y
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="hello-world">Hello World&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create a new project first.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>cargo new hello_world
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Go to the project dir.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>cd hello_world
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Compile the source code.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>cargo build
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Run the code&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>cargo run
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="source-code">Source Code&lt;/h3>
&lt;p>The source code of the hello world program is&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-rust" data-lang="rust">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">fn&lt;/span> &lt;span style="color:#a6e22e">main&lt;/span>() {
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> println!(&lt;span style="color:#e6db74">&amp;#34;Hello, world!&amp;#34;&lt;/span>);
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>}
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="basics">Basics&lt;/h2>
&lt;h3 id="variables">Variables&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-rust" data-lang="rust">&lt;span style="display:flex;">&lt;span>x : &lt;span style="color:#66d9ef">i32&lt;/span> &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">1&lt;/span>; &lt;span style="color:#75715e">// An i32 variable.
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>x : &lt;span style="color:#66d9ef">bool&lt;/span> &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#66d9ef">true&lt;/span>; &lt;span style="color:#75715e">// A boolean variable.
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>x : &lt;span style="color:#66d9ef">f32&lt;/span> &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">1.2&lt;/span>; &lt;span style="color:#75715e">// A float 32 variable.
&lt;/span>&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>All variable data types:&lt;/p>
&lt;div class="sw-lg-table-container dark-scrollbar">
&lt;table class="sw-table" id="">
&lt;thead>
&lt;tr>
&lt;th>DataType&lt;/th>
&lt;th>Description&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>&lt;code>bool&lt;/code>&lt;/td>
&lt;td>The boolean type.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>char&lt;/code>&lt;/td>
&lt;td>A character type.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>i8&lt;/code>&lt;/td>
&lt;td>The 8-bit signed integer type.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>i16&lt;/code>&lt;/td>
&lt;td>The 16-bit signed integer type.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>i32&lt;/code>&lt;/td>
&lt;td>The 32-bit signed integer type.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>i64&lt;/code>&lt;/td>
&lt;td>The 64-bit signed integer type.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>isize&lt;/code>&lt;/td>
&lt;td>The pointer-sized signed integer type.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>u8&lt;/code>&lt;/td>
&lt;td>The 8-bit unsigned integer type.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>u16&lt;/code>&lt;/td>
&lt;td>The 16-bit unsigned integer type.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>u32&lt;/code>&lt;/td>
&lt;td>The 32-bit unsigned integer type.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>u64&lt;/code>&lt;/td>
&lt;td>The 64-bit unsigned integer type.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>usize&lt;/code>&lt;/td>
&lt;td>The pointer-sized unsigned integer type.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>f32&lt;/code>&lt;/td>
&lt;td>The 32-bit floating point type.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>f64&lt;/code>&lt;/td>
&lt;td>The 64-bit floating point type.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>array&lt;/code>&lt;/td>
&lt;td>A fixed-size array, denoted [T; N], for the element type, T, and the non-negative compile-time constant size, N.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>slice&lt;/code>&lt;/td>
&lt;td>A dynamically-sized view into a contiguous sequence, [T].&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>str&lt;/code>&lt;/td>
&lt;td>String slices.&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>tuple&lt;/code>&lt;/td>
&lt;td>A finite heterogeneous sequence, (T, U, ..).&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/div>
&lt;h3 id="functions">Functions&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-rust" data-lang="rust">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">pub&lt;/span> &lt;span style="color:#66d9ef">fn&lt;/span> &lt;span style="color:#a6e22e">foo&lt;/span>(x: &lt;span style="color:#66d9ef">i32&lt;/span>, y: &lt;span style="color:#66d9ef">i32&lt;/span>) -&amp;gt; &lt;span style="color:#66d9ef">i32&lt;/span> {
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> x &lt;span style="color:#f92672">+&lt;/span> y
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>}
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="control-flow">Control Flow&lt;/h3>
&lt;h4 id="if">If&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-rust" data-lang="rust">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">if&lt;/span> x &lt;span style="color:#f92672">&amp;gt;&lt;/span> &lt;span style="color:#ae81ff">0&lt;/span> {
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">..&lt;/span>.
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>} &lt;span style="color:#66d9ef">else&lt;/span> {
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">..&lt;/span>.
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>}
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h4 id="loops">Loops&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-rust" data-lang="rust">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// For loop.
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>&lt;span style="color:#66d9ef">for&lt;/span> i &lt;span style="color:#66d9ef">in&lt;/span> iterator {
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">..&lt;/span>.
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>}
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// While loop.
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>&lt;span style="color:#66d9ef">let&lt;/span> i &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">0&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">while&lt;/span> i &lt;span style="color:#f92672">&amp;lt;&lt;/span> &lt;span style="color:#ae81ff">10&lt;/span> {
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#f92672">..&lt;/span>.
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> i &lt;span style="color:#f92672">+=&lt;/span> &lt;span style="color:#ae81ff">1&lt;/span>;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>}
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="structs-and-traits">Structs And Traits&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-rust" data-lang="rust">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Defining structs.
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>&lt;span style="color:#66d9ef">pub&lt;/span> &lt;span style="color:#66d9ef">struct&lt;/span> &lt;span style="color:#a6e22e">Base&lt;/span> {
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> a: &lt;span style="color:#66d9ef">i32&lt;/span>,
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> b: &lt;span style="color:#66d9ef">i32&lt;/span>,
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> c: &lt;span style="color:#66d9ef">i32&lt;/span>,
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>}
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">pub&lt;/span> &lt;span style="color:#66d9ef">struct&lt;/span> &lt;span style="color:#a6e22e">Derived1&lt;/span> {
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> base: &lt;span style="color:#a6e22e">Base&lt;/span>,
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> d: &lt;span style="color:#66d9ef">i32&lt;/span>,
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>}
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">pub&lt;/span> &lt;span style="color:#66d9ef">struct&lt;/span> &lt;span style="color:#a6e22e">Derived2&lt;/span> {
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> base: &lt;span style="color:#a6e22e">Base&lt;/span>,
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> e: &lt;span style="color:#66d9ef">i32&lt;/span>,
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>}
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Defining traits.
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>&lt;span style="color:#66d9ef">pub&lt;/span> &lt;span style="color:#66d9ef">trait&lt;/span> BaseTrait {
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">fn&lt;/span> &lt;span style="color:#a6e22e">a&lt;/span>(&lt;span style="color:#f92672">&amp;amp;&lt;/span>self) -&amp;gt; &lt;span style="color:#66d9ef">i32&lt;/span>;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">fn&lt;/span> &lt;span style="color:#a6e22e">b&lt;/span>(&lt;span style="color:#f92672">&amp;amp;&lt;/span>self) -&amp;gt; &lt;span style="color:#66d9ef">i32&lt;/span>;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">fn&lt;/span> &lt;span style="color:#a6e22e">c&lt;/span>(&lt;span style="color:#f92672">&amp;amp;&lt;/span>self) -&amp;gt; &lt;span style="color:#66d9ef">i32&lt;/span>;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>}
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">pub&lt;/span> &lt;span style="color:#66d9ef">trait&lt;/span> Derived1Trait : &lt;span style="color:#a6e22e">BaseTrait&lt;/span> {
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">fn&lt;/span> &lt;span style="color:#a6e22e">d&lt;/span>(&lt;span style="color:#f92672">&amp;amp;&lt;/span>self) -&amp;gt; &lt;span style="color:#66d9ef">i32&lt;/span>;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>}
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">pub&lt;/span> &lt;span style="color:#66d9ef">trait&lt;/span> Derived2Trait : &lt;span style="color:#a6e22e">BaseTrait&lt;/span> {
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">fn&lt;/span> &lt;span style="color:#a6e22e">e&lt;/span>(&lt;span style="color:#f92672">&amp;amp;&lt;/span>self) -&amp;gt; &lt;span style="color:#66d9ef">i32&lt;/span>;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>}
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Implementations.
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>&lt;span style="color:#66d9ef">impl&lt;/span> BaseTrait &lt;span style="color:#66d9ef">for&lt;/span> Derived1 {
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">fn&lt;/span> &lt;span style="color:#a6e22e">a&lt;/span>(&lt;span style="color:#f92672">&amp;amp;&lt;/span>self) -&amp;gt; &lt;span style="color:#66d9ef">i32&lt;/span> { self.base.a }
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">fn&lt;/span> &lt;span style="color:#a6e22e">b&lt;/span>(&lt;span style="color:#f92672">&amp;amp;&lt;/span>self) -&amp;gt; &lt;span style="color:#66d9ef">i32&lt;/span> { self.base.b }
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">fn&lt;/span> &lt;span style="color:#a6e22e">c&lt;/span>(&lt;span style="color:#f92672">&amp;amp;&lt;/span>self) -&amp;gt; &lt;span style="color:#66d9ef">i32&lt;/span> { self.base.c }
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>}
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">impl&lt;/span> Derived1Trait &lt;span style="color:#66d9ef">for&lt;/span> Derived1 {
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">fn&lt;/span> &lt;span style="color:#a6e22e">d&lt;/span>(&lt;span style="color:#f92672">&amp;amp;&lt;/span>self) -&amp;gt; &lt;span style="color:#66d9ef">i32&lt;/span> { self.d }
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>}
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">impl&lt;/span> BaseTrait &lt;span style="color:#66d9ef">for&lt;/span> Derived2 {
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">fn&lt;/span> &lt;span style="color:#a6e22e">a&lt;/span>(&lt;span style="color:#f92672">&amp;amp;&lt;/span>self) -&amp;gt; &lt;span style="color:#66d9ef">i32&lt;/span> { self.base.a }
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">fn&lt;/span> &lt;span style="color:#a6e22e">b&lt;/span>(&lt;span style="color:#f92672">&amp;amp;&lt;/span>self) -&amp;gt; &lt;span style="color:#66d9ef">i32&lt;/span> { self.base.b }
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">fn&lt;/span> &lt;span style="color:#a6e22e">c&lt;/span>(&lt;span style="color:#f92672">&amp;amp;&lt;/span>self) -&amp;gt; &lt;span style="color:#66d9ef">i32&lt;/span> { self.base.c }
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>}
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">impl&lt;/span> Derived2Trait &lt;span style="color:#66d9ef">for&lt;/span> Derived2 {
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">fn&lt;/span> &lt;span style="color:#a6e22e">e&lt;/span>(&lt;span style="color:#f92672">&amp;amp;&lt;/span>self) -&amp;gt; &lt;span style="color:#66d9ef">i32&lt;/span> { self.e }
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>}
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="enums">Enums&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-rust" data-lang="rust">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">enum&lt;/span> &lt;span style="color:#a6e22e">IpAddrKind&lt;/span> {
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> V4,
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> V6,
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>}
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="references">References&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-rust" data-lang="rust">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">let&lt;/span> data: &lt;span style="color:#a6e22e">DataType&lt;/span> &lt;span style="color:#f92672">=&lt;/span> DataType::new();
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Create a reference.
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>&lt;span style="color:#66d9ef">let&lt;/span> data_ref: &lt;span style="color:#66d9ef">&amp;amp;&lt;/span>&lt;span style="color:#a6e22e">DataType&lt;/span> &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#f92672">&amp;amp;&lt;/span>data;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Create a mutable reference.
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>&lt;span style="color:#66d9ef">let&lt;/span> &lt;span style="color:#66d9ef">mut&lt;/span> data_mut_ref: &lt;span style="color:#66d9ef">&amp;amp;&lt;/span>&lt;span style="color:#a6e22e">DataType&lt;/span> &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#f92672">&amp;amp;&lt;/span>data;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="smart-pointers">Smart Pointers&lt;/h2>
&lt;p>Smart pointers allow us to define data on heap instead of stack.&lt;/p>
&lt;h3 id="boxt">Box&amp;lt;T&amp;gt;&lt;/h3>
&lt;p>Define a single owner smart pointer.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-rust" data-lang="rust">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">let&lt;/span> data: Box&lt;span style="color:#f92672">&amp;lt;&lt;/span>DataType&lt;span style="color:#f92672">&amp;gt;&lt;/span> &lt;span style="color:#f92672">=&lt;/span> Box::new(DataType::new());
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="rct">Rc&amp;lt;T&amp;gt;&lt;/h3>
&lt;p>Define a multi-owners smart pointer.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-rust" data-lang="rust">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">use&lt;/span> std::rc::Rc;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">let&lt;/span> data: &lt;span style="color:#a6e22e">Rc&lt;/span>&lt;span style="color:#f92672">&amp;lt;&lt;/span>DataType&lt;span style="color:#f92672">&amp;gt;&lt;/span> &lt;span style="color:#f92672">=&lt;/span> Rc::new(DataType::new());
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="reft-and-refcellt">Ref&amp;lt;T&amp;gt; and RefCell&amp;lt;T&amp;gt;&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-rust" data-lang="rust">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">use&lt;/span> std::rc::Rc;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">use&lt;/span> std::cell::RefCell;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">let&lt;/span> data: Box&lt;span style="color:#f92672">&amp;lt;&lt;/span>RefCell&lt;span style="color:#f92672">&amp;lt;&lt;/span>DataType&lt;span style="color:#f92672">&amp;gt;&amp;gt;&lt;/span> &lt;span style="color:#f92672">=&lt;/span> Box::new(RefCell::new(DataType::new()));
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Get a reference.
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>&lt;span style="color:#66d9ef">let&lt;/span> data_ref &lt;span style="color:#f92672">=&lt;/span> data.borrow();
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Get an immutable reference.
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>&lt;span style="color:#66d9ef">let&lt;/span> data_mut_ref &lt;span style="color:#f92672">=&lt;/span> data.borrow_mut();
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="common-data-structures">Common Data Structures&lt;/h2>
&lt;h3 id="vectort">Vector&amp;lt;T&amp;gt;&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-rust" data-lang="rust">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">let&lt;/span> &lt;span style="color:#66d9ef">mut&lt;/span> vec &lt;span style="color:#f92672">=&lt;/span> Vec::new();
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>vec.push(&lt;span style="color:#ae81ff">1&lt;/span>);
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>vec.push(&lt;span style="color:#ae81ff">2&lt;/span>);
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>assert_eq!(vec.len(), &lt;span style="color:#ae81ff">2&lt;/span>);
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>assert_eq!(vec[&lt;span style="color:#ae81ff">0&lt;/span>], &lt;span style="color:#ae81ff">1&lt;/span>);
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>assert_eq!(vec.pop(), Some(&lt;span style="color:#ae81ff">2&lt;/span>));
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>assert_eq!(vec.len(), &lt;span style="color:#ae81ff">1&lt;/span>);
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>vec[&lt;span style="color:#ae81ff">0&lt;/span>] &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">7&lt;/span>;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>assert_eq!(vec[&lt;span style="color:#ae81ff">0&lt;/span>], &lt;span style="color:#ae81ff">7&lt;/span>);
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>vec.extend([&lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">3&lt;/span>]);
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">for&lt;/span> x &lt;span style="color:#66d9ef">in&lt;/span> &lt;span style="color:#f92672">&amp;amp;&lt;/span>vec {
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> println!(&lt;span style="color:#e6db74">&amp;#34;&lt;/span>&lt;span style="color:#e6db74">{x}&lt;/span>&lt;span style="color:#e6db74">&amp;#34;&lt;/span>);
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>}
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>assert_eq!(vec, [&lt;span style="color:#ae81ff">7&lt;/span>, &lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">3&lt;/span>]);
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="hashmapk-v">HashMap&amp;lt;K, V&amp;gt;&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-rust" data-lang="rust">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">use&lt;/span> std::collections::HashMap;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Type inference lets us omit an explicit type signature (which
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// would be `HashMap&amp;lt;String, String&amp;gt;` in this example).
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>&lt;span style="color:#66d9ef">let&lt;/span> &lt;span style="color:#66d9ef">mut&lt;/span> book_reviews &lt;span style="color:#f92672">=&lt;/span> HashMap::new();
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Review some books.
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>book_reviews.insert(
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#e6db74">&amp;#34;Adventures of Huckleberry Finn&amp;#34;&lt;/span>.to_string(),
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#e6db74">&amp;#34;My favorite book.&amp;#34;&lt;/span>.to_string(),
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>);
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>book_reviews.insert(
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#e6db74">&amp;#34;Grimms&amp;#39; Fairy Tales&amp;#34;&lt;/span>.to_string(),
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#e6db74">&amp;#34;Masterpiece.&amp;#34;&lt;/span>.to_string(),
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>);
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>book_reviews.insert(
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#e6db74">&amp;#34;Pride and Prejudice&amp;#34;&lt;/span>.to_string(),
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#e6db74">&amp;#34;Very enjoyable.&amp;#34;&lt;/span>.to_string(),
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>);
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>book_reviews.insert(
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#e6db74">&amp;#34;The Adventures of Sherlock Holmes&amp;#34;&lt;/span>.to_string(),
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#e6db74">&amp;#34;Eye lyked it alot.&amp;#34;&lt;/span>.to_string(),
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>);
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Check for a specific one.
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// When collections store owned values (String), they can still be
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// queried using references (&amp;amp;str).
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>&lt;span style="color:#66d9ef">if&lt;/span> &lt;span style="color:#f92672">!&lt;/span>book_reviews.contains_key(&lt;span style="color:#e6db74">&amp;#34;Les Misérables&amp;#34;&lt;/span>) {
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> println!(&lt;span style="color:#e6db74">&amp;#34;We&amp;#39;ve got &lt;/span>&lt;span style="color:#e6db74">{}&lt;/span>&lt;span style="color:#e6db74"> reviews, but Les Misérables ain&amp;#39;t one.&amp;#34;&lt;/span>,
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> book_reviews.len());
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>}
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// oops, this review has a lot of spelling mistakes, let&amp;#39;s delete it.
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>book_reviews.remove(&lt;span style="color:#e6db74">&amp;#34;The Adventures of Sherlock Holmes&amp;#34;&lt;/span>);
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Look up the values associated with some keys.
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>&lt;span style="color:#66d9ef">let&lt;/span> to_find &lt;span style="color:#f92672">=&lt;/span> [&lt;span style="color:#e6db74">&amp;#34;Pride and Prejudice&amp;#34;&lt;/span>, &lt;span style="color:#e6db74">&amp;#34;Alice&amp;#39;s Adventure in Wonderland&amp;#34;&lt;/span>];
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">for&lt;/span> &lt;span style="color:#f92672">&amp;amp;&lt;/span>book &lt;span style="color:#66d9ef">in&lt;/span> &lt;span style="color:#f92672">&amp;amp;&lt;/span>to_find {
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">match&lt;/span> book_reviews.get(book) {
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> Some(review) &lt;span style="color:#f92672">=&amp;gt;&lt;/span> println!(&lt;span style="color:#e6db74">&amp;#34;&lt;/span>&lt;span style="color:#e6db74">{book}&lt;/span>&lt;span style="color:#e6db74">: &lt;/span>&lt;span style="color:#e6db74">{review}&lt;/span>&lt;span style="color:#e6db74">&amp;#34;&lt;/span>),
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> None &lt;span style="color:#f92672">=&amp;gt;&lt;/span> println!(&lt;span style="color:#e6db74">&amp;#34;&lt;/span>&lt;span style="color:#e6db74">{book}&lt;/span>&lt;span style="color:#e6db74"> is unreviewed.&amp;#34;&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> }
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>}
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Look up the value for a key (will panic if the key is not found).
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>println!(&lt;span style="color:#e6db74">&amp;#34;Review for Jane: &lt;/span>&lt;span style="color:#e6db74">{}&lt;/span>&lt;span style="color:#e6db74">&amp;#34;&lt;/span>, book_reviews[&lt;span style="color:#e6db74">&amp;#34;Pride and Prejudice&amp;#34;&lt;/span>]);
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Iterate over everything.
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>&lt;span style="color:#66d9ef">for&lt;/span> (book, review) &lt;span style="color:#66d9ef">in&lt;/span> &lt;span style="color:#f92672">&amp;amp;&lt;/span>book_reviews {
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> println!(&lt;span style="color:#e6db74">&amp;#34;&lt;/span>&lt;span style="color:#e6db74">{book}&lt;/span>&lt;span style="color:#e6db74">: &lt;/span>&lt;span style="color:#ae81ff">\&amp;#34;&lt;/span>&lt;span style="color:#e6db74">{review}&lt;/span>&lt;span style="color:#ae81ff">\&amp;#34;&lt;/span>&lt;span style="color:#e6db74">&amp;#34;&lt;/span>);
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>}
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="queuet">Queue&amp;lt;T&amp;gt;&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-rust" data-lang="rust">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Create a simple Queue
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>&lt;span style="color:#66d9ef">let&lt;/span> &lt;span style="color:#66d9ef">mut&lt;/span> q: &lt;span style="color:#a6e22e">Queue&lt;/span>&lt;span style="color:#f92672">&amp;lt;&lt;/span>&lt;span style="color:#66d9ef">isize&lt;/span>&lt;span style="color:#f92672">&amp;gt;&lt;/span> &lt;span style="color:#f92672">=&lt;/span> queue![];
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Add some elements to it
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>q.add(&lt;span style="color:#ae81ff">1&lt;/span>);
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>q.add(&lt;span style="color:#f92672">-&lt;/span>&lt;span style="color:#ae81ff">2&lt;/span>);
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>q.add(&lt;span style="color:#ae81ff">3&lt;/span>);
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Check the Queue&amp;#39;s size
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>q.size(); &lt;span style="color:#75715e">// 3
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Remove an element
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>q.remove(); &lt;span style="color:#75715e">// Ok(1)
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Check the Queue&amp;#39;s size
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>q.size(); &lt;span style="color:#75715e">// 2
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Peek at the next element scheduled for removal
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>q.peek(); &lt;span style="color:#75715e">// Ok(-2)
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Confirm that the Queue size hasn&amp;#39;t changed
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>q.size(); &lt;span style="color:#75715e">// 2
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Remove the remaining elements
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>q.remove(); &lt;span style="color:#75715e">// Ok(-2)
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>q.remove(); &lt;span style="color:#75715e">// Ok(3)
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Peek into an empty Queue
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>q.peek(); &lt;span style="color:#75715e">// Raises an error
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">// Attempt to remove an element from an empty Queue
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span>q.remove(); &lt;span style="color:#75715e">// Raises an error
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">&lt;/span> &lt;span style="color:#960050;background-color:#1e0010">```&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div></description></item><item><title>Cheatsheets: Tensorflow Cheatsheet</title><link>https://devmemo.gitlab.io/cheatsheets/tensorflow/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://devmemo.gitlab.io/cheatsheets/tensorflow/</guid><description>
&lt;h2 id="install-tensorflow">Install Tensorflow&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-python" data-lang="python">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Upgrade pip&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pip install &lt;span style="color:#f92672">--&lt;/span>upgrade pip
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Install the current stable release of tensorflow.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>pip install tensorflow
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="tensorflow-apis">Tensorflow APIs&lt;/h2>
&lt;h3 id="tensor">Tensor&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-python" data-lang="python">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Define a constant tensor.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>constant(&lt;span style="color:#ae81ff">5&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Define another constant tensor.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>constant([[&lt;span style="color:#ae81ff">1.0&lt;/span>, &lt;span style="color:#ae81ff">2.0&lt;/span>], [&lt;span style="color:#ae81ff">3.0&lt;/span>, &lt;span style="color:#ae81ff">4.0&lt;/span>]])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Compute a tensor from two constant tensors.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>t1 &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>constant([[&lt;span style="color:#ae81ff">1.0&lt;/span>, &lt;span style="color:#ae81ff">2.0&lt;/span>], [&lt;span style="color:#ae81ff">3.0&lt;/span>, &lt;span style="color:#ae81ff">4.0&lt;/span>]])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>t2 &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>constant([[&lt;span style="color:#ae81ff">1.0&lt;/span>, &lt;span style="color:#ae81ff">1.0&lt;/span>], [&lt;span style="color:#ae81ff">0.0&lt;/span>, &lt;span style="color:#ae81ff">1.0&lt;/span>]])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>t3 &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>matmul(t1, t2)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Get the tensor device.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>t&lt;span style="color:#f92672">.&lt;/span>device
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Get DType of the tensor.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>t&lt;span style="color:#f92672">.&lt;/span>dtype
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Get the tensor name.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>t&lt;span style="color:#f92672">.&lt;/span>name
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Get the graph containing this tensor.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>t&lt;span style="color:#f92672">.&lt;/span>graph
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Get the Operation that produces this tensor as an output.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>t&lt;span style="color:#f92672">.&lt;/span>op
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Get the tensor shape.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>t&lt;span style="color:#f92672">.&lt;/span>shape
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Get the index of this tensor in the outputs of its Operation.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>t&lt;span style="color:#f92672">.&lt;/span>value_index
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="raggedtensor">RaggedTensor&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-python" data-lang="python">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># The tensor value is &amp;lt;tf.RaggedTensor [[3, 1, 4, 1], [], [5, 9, 2], [6], []]&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>RaggedTensor&lt;span style="color:#f92672">.&lt;/span>from_row_splits(
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> values&lt;span style="color:#f92672">=&lt;/span>[&lt;span style="color:#ae81ff">3&lt;/span>, &lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#ae81ff">4&lt;/span>, &lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#ae81ff">5&lt;/span>, &lt;span style="color:#ae81ff">9&lt;/span>, &lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">6&lt;/span>], row_splits&lt;span style="color:#f92672">=&lt;/span>[&lt;span style="color:#ae81ff">0&lt;/span>, &lt;span style="color:#ae81ff">4&lt;/span>, &lt;span style="color:#ae81ff">4&lt;/span>, &lt;span style="color:#ae81ff">7&lt;/span>, &lt;span style="color:#ae81ff">8&lt;/span>, &lt;span style="color:#ae81ff">8&lt;/span>]
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># The tensor value is &amp;lt;tf.RaggedTensor [[3, 1, 4, 1], [], [5, 9, 2], [6], []]&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>RaggedTensor&lt;span style="color:#f92672">.&lt;/span>from_row_lengths(
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> values&lt;span style="color:#f92672">=&lt;/span>[&lt;span style="color:#ae81ff">3&lt;/span>, &lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#ae81ff">4&lt;/span>, &lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#ae81ff">5&lt;/span>, &lt;span style="color:#ae81ff">9&lt;/span>, &lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">6&lt;/span>], row_lengths&lt;span style="color:#f92672">=&lt;/span>[&lt;span style="color:#ae81ff">4&lt;/span>, &lt;span style="color:#ae81ff">0&lt;/span>, &lt;span style="color:#ae81ff">3&lt;/span>, &lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#ae81ff">0&lt;/span>]
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># The tensor value is &amp;lt;tf.RaggedTensor [[3, 1, 4, 1], [], [5, 9, 2], [6], []]&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>RaggedTensor&lt;span style="color:#f92672">.&lt;/span>from_value_rowids(
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> values&lt;span style="color:#f92672">=&lt;/span>[&lt;span style="color:#ae81ff">3&lt;/span>, &lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#ae81ff">4&lt;/span>, &lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#ae81ff">5&lt;/span>, &lt;span style="color:#ae81ff">9&lt;/span>, &lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">6&lt;/span>], value_rowids&lt;span style="color:#f92672">=&lt;/span>[&lt;span style="color:#ae81ff">0&lt;/span>, &lt;span style="color:#ae81ff">0&lt;/span>, &lt;span style="color:#ae81ff">0&lt;/span>, &lt;span style="color:#ae81ff">0&lt;/span>, &lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">3&lt;/span>], nrows&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#ae81ff">5&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># The tensor value is &amp;lt;tf.RaggedTensor [[3, 1, 4, 1], [], [5, 9, 2], [6], []]&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>RaggedTensor&lt;span style="color:#f92672">.&lt;/span>from_row_starts(
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> values&lt;span style="color:#f92672">=&lt;/span>[&lt;span style="color:#ae81ff">3&lt;/span>, &lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#ae81ff">4&lt;/span>, &lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#ae81ff">5&lt;/span>, &lt;span style="color:#ae81ff">9&lt;/span>, &lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">6&lt;/span>], row_starts&lt;span style="color:#f92672">=&lt;/span>[&lt;span style="color:#ae81ff">0&lt;/span>, &lt;span style="color:#ae81ff">4&lt;/span>, &lt;span style="color:#ae81ff">4&lt;/span>, &lt;span style="color:#ae81ff">7&lt;/span>, &lt;span style="color:#ae81ff">8&lt;/span>]
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># The tensor value is &amp;lt;tf.RaggedTensor [[3, 1, 4, 1], [], [5, 9, 2], [6], []]&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>RaggedTensor&lt;span style="color:#f92672">.&lt;/span>from_row_limits(
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> values&lt;span style="color:#f92672">=&lt;/span>[&lt;span style="color:#ae81ff">3&lt;/span>, &lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#ae81ff">4&lt;/span>, &lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#ae81ff">5&lt;/span>, &lt;span style="color:#ae81ff">9&lt;/span>, &lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">6&lt;/span>], row_limits&lt;span style="color:#f92672">=&lt;/span>[&lt;span style="color:#ae81ff">4&lt;/span>, &lt;span style="color:#ae81ff">4&lt;/span>, &lt;span style="color:#ae81ff">7&lt;/span>, &lt;span style="color:#ae81ff">8&lt;/span>, &lt;span style="color:#ae81ff">8&lt;/span>]
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># The tensor value is &amp;lt;tf.RaggedTensor [[3, 1], [4, 1], [5, 9], [2, 6]]&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>RaggedTensor&lt;span style="color:#f92672">.&lt;/span>from_uniform_row_length(
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> values&lt;span style="color:#f92672">=&lt;/span>[&lt;span style="color:#ae81ff">3&lt;/span>, &lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#ae81ff">4&lt;/span>, &lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#ae81ff">5&lt;/span>, &lt;span style="color:#ae81ff">9&lt;/span>, &lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">6&lt;/span>], uniform_row_length&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#ae81ff">2&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>)
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="sparsetensor">SparseTensor&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-python" data-lang="python">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Defines a sparse tensor representing the following dense tensor:&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># [[1, 0, 0, 0]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># [0, 0, 2, 0]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># [0, 0, 0, 0]]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>SparseTensor(indices&lt;span style="color:#f92672">=&lt;/span>[[&lt;span style="color:#ae81ff">0&lt;/span>, &lt;span style="color:#ae81ff">0&lt;/span>], [&lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#ae81ff">2&lt;/span>]], values&lt;span style="color:#f92672">=&lt;/span>[&lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#ae81ff">2&lt;/span>], dense_shape&lt;span style="color:#f92672">=&lt;/span>[&lt;span style="color:#ae81ff">3&lt;/span>, &lt;span style="color:#ae81ff">4&lt;/span>])
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="variable">Variable&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-python" data-lang="python">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create a variable.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>v &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>Variable(&lt;span style="color:#ae81ff">1.&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Assign 2.0 to the variable.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>v&lt;span style="color:#f92672">.&lt;/span>assign(&lt;span style="color:#ae81ff">2.&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Add 0.5 to the variable.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>v&lt;span style="color:#f92672">.&lt;/span>assign_add(&lt;span style="color:#ae81ff">0.5&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Substract 0.5 from the variable.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>v&lt;span style="color:#f92672">.&lt;/span>assign_sub(&lt;span style="color:#ae81ff">0.5&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Matmul a variable and a constant tensor.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>w &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>Variable([[&lt;span style="color:#ae81ff">1.&lt;/span>], [&lt;span style="color:#ae81ff">2.&lt;/span>]])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>x &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>constant([[&lt;span style="color:#ae81ff">3.&lt;/span>, &lt;span style="color:#ae81ff">4.&lt;/span>]])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>matmul(w, x)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Variable can only be created once within a tf.function.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">class&lt;/span> &lt;span style="color:#a6e22e">M&lt;/span>(tf&lt;span style="color:#f92672">.&lt;/span>Module):
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#a6e22e">@tf.function&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">def&lt;/span> __call__(self, x):
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">if&lt;/span> &lt;span style="color:#f92672">not&lt;/span> hasattr(self, &lt;span style="color:#e6db74">&amp;#34;v&amp;#34;&lt;/span>): &lt;span style="color:#75715e"># Or set self.v to None in __init__&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> self&lt;span style="color:#f92672">.&lt;/span>v &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>Variable(x)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">return&lt;/span> self&lt;span style="color:#f92672">.&lt;/span>v &lt;span style="color:#f92672">*&lt;/span> x
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="tfdata">tf.data&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-python" data-lang="python">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Load dataset using range.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>data&lt;span style="color:#f92672">.&lt;/span>Dataset&lt;span style="color:#f92672">.&lt;/span>range(&lt;span style="color:#ae81ff">5&lt;/span>) &lt;span style="color:#75715e"># [0, 1, 2, 3, 4]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>data&lt;span style="color:#f92672">.&lt;/span>Dataset&lt;span style="color:#f92672">.&lt;/span>range(&lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">5&lt;/span>) &lt;span style="color:#75715e"># [2, 3, 4]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>data&lt;span style="color:#f92672">.&lt;/span>Dataset&lt;span style="color:#f92672">.&lt;/span>range(&lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#ae81ff">5&lt;/span>, &lt;span style="color:#ae81ff">2&lt;/span>) &lt;span style="color:#75715e"># [1, 3]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>data&lt;span style="color:#f92672">.&lt;/span>Dataset&lt;span style="color:#f92672">.&lt;/span>range(&lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#ae81ff">5&lt;/span>, &lt;span style="color:#f92672">-&lt;/span>&lt;span style="color:#ae81ff">2&lt;/span>) &lt;span style="color:#75715e"># []&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>data&lt;span style="color:#f92672">.&lt;/span>Dataset&lt;span style="color:#f92672">.&lt;/span>range(&lt;span style="color:#ae81ff">5&lt;/span>, &lt;span style="color:#ae81ff">1&lt;/span>) &lt;span style="color:#75715e"># []&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>data&lt;span style="color:#f92672">.&lt;/span>Dataset&lt;span style="color:#f92672">.&lt;/span>range(&lt;span style="color:#ae81ff">5&lt;/span>, &lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#f92672">-&lt;/span>&lt;span style="color:#ae81ff">2&lt;/span>) &lt;span style="color:#75715e"># [5, 3]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>data&lt;span style="color:#f92672">.&lt;/span>Dataset&lt;span style="color:#f92672">.&lt;/span>range(&lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">5&lt;/span>, output_type&lt;span style="color:#f92672">=&lt;/span>tf&lt;span style="color:#f92672">.&lt;/span>int32) &lt;span style="color:#75715e"># [2, 3, 4]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>data&lt;span style="color:#f92672">.&lt;/span>Dataset&lt;span style="color:#f92672">.&lt;/span>range(&lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#ae81ff">5&lt;/span>, &lt;span style="color:#ae81ff">2&lt;/span>, output_type&lt;span style="color:#f92672">=&lt;/span>tf&lt;span style="color:#f92672">.&lt;/span>float32) &lt;span style="color:#75715e"># [1.0, 3.0]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Load tf data from python array&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>dataset &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>data&lt;span style="color:#f92672">.&lt;/span>Dataset&lt;span style="color:#f92672">.&lt;/span>from_tensor_slices([&lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">3&lt;/span>])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Load dataset from txt files.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>dataset &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>data&lt;span style="color:#f92672">.&lt;/span>TextLineDataset([&lt;span style="color:#e6db74">&amp;#34;file1.txt&amp;#34;&lt;/span>, &lt;span style="color:#e6db74">&amp;#34;file2.txt&amp;#34;&lt;/span>])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Load data from tfrecords files.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>dataset &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>data&lt;span style="color:#f92672">.&lt;/span>TFRecordDataset([&lt;span style="color:#e6db74">&amp;#34;file1.tfrecords&amp;#34;&lt;/span>, &lt;span style="color:#e6db74">&amp;#34;file2.tfrecords&amp;#34;&lt;/span>])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create a dataset using all files matching a pattern.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>dataset &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>data&lt;span style="color:#f92672">.&lt;/span>Dataset&lt;span style="color:#f92672">.&lt;/span>list_files(&lt;span style="color:#e6db74">&amp;#34;/path/*.txt&amp;#34;&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Split dataset into batches.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>dataset &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>data&lt;span style="color:#f92672">.&lt;/span>Dataset&lt;span style="color:#f92672">.&lt;/span>range(&lt;span style="color:#ae81ff">8&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>dataset &lt;span style="color:#f92672">=&lt;/span> dataset&lt;span style="color:#f92672">.&lt;/span>batch(&lt;span style="color:#ae81ff">3&lt;/span>) &lt;span style="color:#75715e"># The dataset value is [[0, 1, 2], [3, 4, 5], [6, 7]]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Transform a dataset.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>dataset &lt;span style="color:#f92672">=&lt;/span> dataset&lt;span style="color:#f92672">.&lt;/span>map(&lt;span style="color:#66d9ef">lambda&lt;/span> x: x&lt;span style="color:#f92672">*&lt;/span>&lt;span style="color:#ae81ff">2&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Prefetch a dataset.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>dataset &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>data&lt;span style="color:#f92672">.&lt;/span>Dataset&lt;span style="color:#f92672">.&lt;/span>range(&lt;span style="color:#ae81ff">3&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>dataset &lt;span style="color:#f92672">=&lt;/span> dataset&lt;span style="color:#f92672">.&lt;/span>prefetch(&lt;span style="color:#ae81ff">2&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Repeat a dataset.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>dataset &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>data&lt;span style="color:#f92672">.&lt;/span>Dataset&lt;span style="color:#f92672">.&lt;/span>from_tensor_slices([&lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">3&lt;/span>])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>dataset &lt;span style="color:#f92672">=&lt;/span> dataset&lt;span style="color:#f92672">.&lt;/span>repeat(&lt;span style="color:#ae81ff">3&lt;/span>) &lt;span style="color:#75715e"># [1, 2, 3, 1, 2, 3, 1, 2, 3]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Shuttle a dataset.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>dataset &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>data&lt;span style="color:#f92672">.&lt;/span>Dataset&lt;span style="color:#f92672">.&lt;/span>range(&lt;span style="color:#ae81ff">3&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>dataset &lt;span style="color:#f92672">=&lt;/span> dataset&lt;span style="color:#f92672">.&lt;/span>shuffle(&lt;span style="color:#ae81ff">3&lt;/span>, reshuffle_each_iteration&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#66d9ef">False&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>dataset &lt;span style="color:#f92672">=&lt;/span> dataset&lt;span style="color:#f92672">.&lt;/span>repeat(&lt;span style="color:#ae81ff">2&lt;/span>) &lt;span style="color:#75715e"># [1, 0, 2, 1, 0, 2]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Concat a dataset.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>a &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>data&lt;span style="color:#f92672">.&lt;/span>Dataset&lt;span style="color:#f92672">.&lt;/span>range(&lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#ae81ff">4&lt;/span>) &lt;span style="color:#75715e"># [1, 2, 3]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>b &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>data&lt;span style="color:#f92672">.&lt;/span>Dataset&lt;span style="color:#f92672">.&lt;/span>range(&lt;span style="color:#ae81ff">4&lt;/span>, &lt;span style="color:#ae81ff">8&lt;/span>) &lt;span style="color:#75715e"># [4, 5, 6, 7]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>ds &lt;span style="color:#f92672">=&lt;/span> a&lt;span style="color:#f92672">.&lt;/span>concatenate(b) &lt;span style="color:#75715e"># [1, 2, 3, 4, 5, 6, 7]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Zip two datasets.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>a &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>data&lt;span style="color:#f92672">.&lt;/span>Dataset&lt;span style="color:#f92672">.&lt;/span>range(&lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#ae81ff">4&lt;/span>) &lt;span style="color:#75715e"># [1, 2, 3]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>b &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>data&lt;span style="color:#f92672">.&lt;/span>Dataset&lt;span style="color:#f92672">.&lt;/span>range(&lt;span style="color:#ae81ff">4&lt;/span>, &lt;span style="color:#ae81ff">7&lt;/span>) &lt;span style="color:#75715e"># [4, 5, 6]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>ds &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>data&lt;span style="color:#f92672">.&lt;/span>Dataset&lt;span style="color:#f92672">.&lt;/span>zip((a, b)) &lt;span style="color:#75715e"># [(1, 4), (2, 5), (3, 6)]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Iterating data in tf.data.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">for&lt;/span> element &lt;span style="color:#f92672">in&lt;/span> dataset:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> print(element)
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="tfmath">tf.math&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-python" data-lang="python">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Get absolute values.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>x &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>constant([&lt;span style="color:#f92672">-&lt;/span>&lt;span style="color:#ae81ff">2.25&lt;/span>, &lt;span style="color:#ae81ff">3.25&lt;/span>])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>abs(x) &lt;span style="color:#75715e"># [2.25, 3.25]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Add a scalar and a list.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>add([&lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">3&lt;/span>, &lt;span style="color:#ae81ff">4&lt;/span>, &lt;span style="color:#ae81ff">5&lt;/span>], &lt;span style="color:#ae81ff">1&lt;/span>) &lt;span style="color:#75715e"># [2, 3, 4, 5, 6]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Add two tensors.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>x &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>convert_to_tensor([&lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">3&lt;/span>, &lt;span style="color:#ae81ff">4&lt;/span>, &lt;span style="color:#ae81ff">5&lt;/span>])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>y &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>convert_to_tensor(&lt;span style="color:#ae81ff">1&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>z &lt;span style="color:#f92672">=&lt;/span> x &lt;span style="color:#f92672">+&lt;/span> y &lt;span style="color:#75715e"># [2, 3, 4, 5, 6]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Add a list and a tensor.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>x &lt;span style="color:#f92672">=&lt;/span> [&lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">3&lt;/span>, &lt;span style="color:#ae81ff">4&lt;/span>, &lt;span style="color:#ae81ff">5&lt;/span>]
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>y &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>constant([&lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">3&lt;/span>, &lt;span style="color:#ae81ff">4&lt;/span>, &lt;span style="color:#ae81ff">5&lt;/span>])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>add(x, y)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Add n tensors.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>a &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>constant([[&lt;span style="color:#ae81ff">3&lt;/span>, &lt;span style="color:#ae81ff">5&lt;/span>], [&lt;span style="color:#ae81ff">4&lt;/span>, &lt;span style="color:#ae81ff">8&lt;/span>]])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>b &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>constant([[&lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#ae81ff">6&lt;/span>], [&lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">9&lt;/span>]])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>math&lt;span style="color:#f92672">.&lt;/span>add_n([a, b, a]) &lt;span style="color:#75715e"># [[7, 16], [10, 25]]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Get the cumulative sum.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>x &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>constant([&lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">4&lt;/span>, &lt;span style="color:#ae81ff">6&lt;/span>, &lt;span style="color:#ae81ff">8&lt;/span>])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>cumsum(x) &lt;span style="color:#75715e"># [2, 6, 12, 20]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Get the cumulative sum for certain axis.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>y &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>constant([[&lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">4&lt;/span>, &lt;span style="color:#ae81ff">6&lt;/span>, &lt;span style="color:#ae81ff">8&lt;/span>], [&lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#ae81ff">3&lt;/span>, &lt;span style="color:#ae81ff">5&lt;/span>, &lt;span style="color:#ae81ff">7&lt;/span>]])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>cumsum(y, axis&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#ae81ff">0&lt;/span>) &lt;span style="color:#75715e"># [[2, 4, 6, 8], [3, 7, 11, 15]]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>cumsum(y, axis&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#ae81ff">1&lt;/span>) &lt;span style="color:#75715e"># [[2, 6, 12, 20], [1, 4, 9, 16]]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Get the exclusive cumulative sum.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>x &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>constant([&lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">4&lt;/span>, &lt;span style="color:#ae81ff">6&lt;/span>, &lt;span style="color:#ae81ff">8&lt;/span>])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>cumsum(x, exclusive&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#66d9ef">True&lt;/span>) &lt;span style="color:#75715e"># [0, 2, 6, 12]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Get the reverse cumulative sum.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>x &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>constant([&lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">4&lt;/span>, &lt;span style="color:#ae81ff">6&lt;/span>, &lt;span style="color:#ae81ff">8&lt;/span>])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>cumsum(x, reverse&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#66d9ef">True&lt;/span>) &lt;span style="color:#75715e"># [18, 14, 8, 0]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Divide tensors.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>x &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>constant([&lt;span style="color:#ae81ff">16&lt;/span>, &lt;span style="color:#ae81ff">12&lt;/span>, &lt;span style="color:#ae81ff">11&lt;/span>])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>y &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>constant([&lt;span style="color:#ae81ff">4&lt;/span>, &lt;span style="color:#ae81ff">6&lt;/span>, &lt;span style="color:#ae81ff">2&lt;/span>])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>divide(x, y) &lt;span style="color:#75715e"># [4.0, 2.0, 5.5]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Get tensor equals.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>x &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>constant([&lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">4&lt;/span>])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>y &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>constant(&lt;span style="color:#ae81ff">2&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>math&lt;span style="color:#f92672">.&lt;/span>equal(x, y) &lt;span style="color:#75715e"># [True, False]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Get tensor equals.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>x &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>constant([&lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">4&lt;/span>])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>y &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>constant([&lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">4&lt;/span>])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>math&lt;span style="color:#f92672">.&lt;/span>equal(x, y) &lt;span style="color:#75715e"># [True, True]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Multiply tensors.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>x &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>constant(([&lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">3&lt;/span>, &lt;span style="color:#ae81ff">4&lt;/span>]))
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>math&lt;span style="color:#f92672">.&lt;/span>multiply(x, x) &lt;span style="color:#75715e"># [1, 4, 9, 16]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Multiple tensors of different shapes with broadcast.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>x &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>ones([&lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#ae81ff">2&lt;/span>]);
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>y &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>ones([&lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">1&lt;/span>]);
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>x &lt;span style="color:#f92672">*&lt;/span> y &lt;span style="color:#75715e"># [[1.0, 1.0], [1.0, 1.0]]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Compute the power of one value to another.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>x &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>constant([[&lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">2&lt;/span>], [&lt;span style="color:#ae81ff">3&lt;/span>, &lt;span style="color:#ae81ff">3&lt;/span>]])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>y &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>constant([[&lt;span style="color:#ae81ff">8&lt;/span>, &lt;span style="color:#ae81ff">16&lt;/span>], [&lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">3&lt;/span>]])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>pow(x, y) &lt;span style="color:#75715e"># [[256, 65536], [9, 27]]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Compute sigmoid of a tensor.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>x &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>constant([&lt;span style="color:#ae81ff">0.0&lt;/span>, &lt;span style="color:#ae81ff">1.0&lt;/span>, &lt;span style="color:#ae81ff">50.0&lt;/span>, &lt;span style="color:#ae81ff">100.0&lt;/span>])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>math&lt;span style="color:#f92672">.&lt;/span>sigmoid(x) &lt;span style="color:#75715e"># [0.5, 0.7310586, 1.0, 1.0]&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="tflinalg">tf.linalg&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-python" data-lang="python">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Transpose a matrix.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>x &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>constant([[&lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">3&lt;/span>], [&lt;span style="color:#ae81ff">4&lt;/span>, &lt;span style="color:#ae81ff">5&lt;/span>, &lt;span style="color:#ae81ff">6&lt;/span>]])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>linalg&lt;span style="color:#f92672">.&lt;/span>matrix_transpose(x) &lt;span style="color:#75715e"># [[1, 4], [2, 5], [3, 6]]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Matmul two tensors.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>a &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>constant([[&lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">3&lt;/span>], [&lt;span style="color:#ae81ff">4&lt;/span>, &lt;span style="color:#ae81ff">5&lt;/span>, &lt;span style="color:#ae81ff">6&lt;/span>]])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>b &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>constant([[&lt;span style="color:#ae81ff">7&lt;/span>, &lt;span style="color:#ae81ff">8&lt;/span>], [&lt;span style="color:#ae81ff">9&lt;/span>, &lt;span style="color:#ae81ff">10&lt;/span>], [&lt;span style="color:#ae81ff">11&lt;/span>, &lt;span style="color:#ae81ff">12&lt;/span>]])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>c &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>matmul(a, b) &lt;span style="color:#75715e"># [[58, 64], [139, 154]]&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="tfdistribute">tf.distribute&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-python" data-lang="python">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">################################################################################&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Define a mirrored strategy, and create a variable in it.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># The variable will be mirrored on both GPU:0 and GPU:1.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">################################################################################&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>strategy &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>distribute&lt;span style="color:#f92672">.&lt;/span>MirroredStrategy([&lt;span style="color:#e6db74">&amp;#34;GPU:0&amp;#34;&lt;/span>, &lt;span style="color:#e6db74">&amp;#34;GPU:1&amp;#34;&lt;/span>])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">with&lt;/span> strategy&lt;span style="color:#f92672">.&lt;/span>scope():
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> x &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>Variable(&lt;span style="color:#ae81ff">1.&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">################################################################################&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Variables (e.g., x in this example) created in tf.function is still mirrored.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">################################################################################&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>x &lt;span style="color:#f92672">=&lt;/span> []
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#a6e22e">@tf.function&lt;/span> &lt;span style="color:#75715e"># Wrap the function with tf.function.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">def&lt;/span> &lt;span style="color:#a6e22e">create_variable&lt;/span>():
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">if&lt;/span> &lt;span style="color:#f92672">not&lt;/span> x:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> x&lt;span style="color:#f92672">.&lt;/span>append(tf&lt;span style="color:#f92672">.&lt;/span>Variable(&lt;span style="color:#ae81ff">1.&lt;/span>))
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">return&lt;/span> x[&lt;span style="color:#ae81ff">0&lt;/span>]
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>strategy &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>distribute&lt;span style="color:#f92672">.&lt;/span>MirroredStrategy([&lt;span style="color:#e6db74">&amp;#34;GPU:0&amp;#34;&lt;/span>, &lt;span style="color:#e6db74">&amp;#34;GPU:1&amp;#34;&lt;/span>])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">with&lt;/span> strategy&lt;span style="color:#f92672">.&lt;/span>scope():
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> _ &lt;span style="color:#f92672">=&lt;/span> create_variable()
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">################################################################################&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Dataset can also be mirrored to multiple devices within the MirroredStrategy.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">################################################################################&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>my_strategy &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>distribute&lt;span style="color:#f92672">.&lt;/span>MirroredStrategy()
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">with&lt;/span> my_strategy&lt;span style="color:#f92672">.&lt;/span>scope():
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#a6e22e">@tf.function&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">def&lt;/span> &lt;span style="color:#a6e22e">distribute_train_epoch&lt;/span>(dataset):
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">def&lt;/span> &lt;span style="color:#a6e22e">replica_fn&lt;/span>(input):
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#75715e"># process input and return result&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">return&lt;/span> result
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> total_result &lt;span style="color:#f92672">=&lt;/span> &lt;span style="color:#ae81ff">0&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">for&lt;/span> x &lt;span style="color:#f92672">in&lt;/span> dataset:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> per_replica_result &lt;span style="color:#f92672">=&lt;/span> my_strategy&lt;span style="color:#f92672">.&lt;/span>run(replica_fn, args&lt;span style="color:#f92672">=&lt;/span>(x,))
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> total_result &lt;span style="color:#f92672">+=&lt;/span> my_strategy&lt;span style="color:#f92672">.&lt;/span>reduce(tf&lt;span style="color:#f92672">.&lt;/span>distribute&lt;span style="color:#f92672">.&lt;/span>ReduceOp&lt;span style="color:#f92672">.&lt;/span>SUM,
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> per_replica_result, axis&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#66d9ef">None&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">return&lt;/span> total_result
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> dist_dataset &lt;span style="color:#f92672">=&lt;/span> my_strategy&lt;span style="color:#f92672">.&lt;/span>experimental_distribute_dataset(dataset)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">for&lt;/span> _ &lt;span style="color:#f92672">in&lt;/span> range(EPOCHS):
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> train_result &lt;span style="color:#f92672">=&lt;/span> distribute_train_epoch(dist_dataset)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">################################################################################&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># MultiWorkerMirroredStrategy is used for distributed training.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">################################################################################&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>strategy &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>distribute&lt;span style="color:#f92672">.&lt;/span>MultiWorkerMirroredStrategy()
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#a6e22e">@tf.function&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">def&lt;/span> &lt;span style="color:#a6e22e">train_step&lt;/span>(iterator):
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">def&lt;/span> &lt;span style="color:#a6e22e">step_fn&lt;/span>(inputs):
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> features, labels &lt;span style="color:#f92672">=&lt;/span> inputs
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">with&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>GradientTape() &lt;span style="color:#66d9ef">as&lt;/span> tape:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> logits &lt;span style="color:#f92672">=&lt;/span> model(features, training&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#66d9ef">True&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> loss &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>losses&lt;span style="color:#f92672">.&lt;/span>sparse_categorical_crossentropy(labels, logits)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> grads &lt;span style="color:#f92672">=&lt;/span> tape&lt;span style="color:#f92672">.&lt;/span>gradient(loss, model&lt;span style="color:#f92672">.&lt;/span>trainable_variables)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> optimizer&lt;span style="color:#f92672">.&lt;/span>apply_gradients(zip(grads, model&lt;span style="color:#f92672">.&lt;/span>trainable_variables))
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> strategy&lt;span style="color:#f92672">.&lt;/span>run(step_fn, args&lt;span style="color:#f92672">=&lt;/span>(next(iterator),))
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">for&lt;/span> _ &lt;span style="color:#f92672">in&lt;/span> range(NUM_STEP):
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> train_step(iterator)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">################################################################################&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Use TPUStrategy to train a model on TPUs.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e">################################################################################&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>resolver &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>distribute&lt;span style="color:#f92672">.&lt;/span>cluster_resolver&lt;span style="color:#f92672">.&lt;/span>TPUClusterResolver(tpu&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#e6db74">&amp;#39;&amp;#39;&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>config&lt;span style="color:#f92672">.&lt;/span>experimental_connect_to_cluster(resolver)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>tpu&lt;span style="color:#f92672">.&lt;/span>experimental&lt;span style="color:#f92672">.&lt;/span>initialize_tpu_system(resolver)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>strategy &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>distribute&lt;span style="color:#f92672">.&lt;/span>TPUStrategy(resolver)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">with&lt;/span> strategy&lt;span style="color:#f92672">.&lt;/span>scope():
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> model &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>Sequential([tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>layers&lt;span style="color:#f92672">.&lt;/span>Dense(&lt;span style="color:#ae81ff">2&lt;/span>, input_shape&lt;span style="color:#f92672">=&lt;/span>(&lt;span style="color:#ae81ff">5&lt;/span>,))])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> optimizer &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>optimizers&lt;span style="color:#f92672">.&lt;/span>SGD(learning_rate&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#ae81ff">0.1&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">def&lt;/span> &lt;span style="color:#a6e22e">dataset_fn&lt;/span>(ctx):
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> x &lt;span style="color:#f92672">=&lt;/span> np&lt;span style="color:#f92672">.&lt;/span>random&lt;span style="color:#f92672">.&lt;/span>random((&lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">5&lt;/span>))&lt;span style="color:#f92672">.&lt;/span>astype(np&lt;span style="color:#f92672">.&lt;/span>float32)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> y &lt;span style="color:#f92672">=&lt;/span> np&lt;span style="color:#f92672">.&lt;/span>random&lt;span style="color:#f92672">.&lt;/span>randint(&lt;span style="color:#ae81ff">2&lt;/span>, size&lt;span style="color:#f92672">=&lt;/span>(&lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">1&lt;/span>))
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> dataset &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>data&lt;span style="color:#f92672">.&lt;/span>Dataset&lt;span style="color:#f92672">.&lt;/span>from_tensor_slices((x, y))
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">return&lt;/span> dataset&lt;span style="color:#f92672">.&lt;/span>repeat()&lt;span style="color:#f92672">.&lt;/span>batch(&lt;span style="color:#ae81ff">1&lt;/span>, drop_remainder&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#66d9ef">True&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>dist_dataset &lt;span style="color:#f92672">=&lt;/span> strategy&lt;span style="color:#f92672">.&lt;/span>distribute_datasets_from_function(dataset_fn)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>iterator &lt;span style="color:#f92672">=&lt;/span> iter(dist_dataset)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#a6e22e">@tf.function&lt;/span>()
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">def&lt;/span> &lt;span style="color:#a6e22e">train_step&lt;/span>(iterator):
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">def&lt;/span> &lt;span style="color:#a6e22e">step_fn&lt;/span>(inputs):
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> features, labels &lt;span style="color:#f92672">=&lt;/span> inputs
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">with&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>GradientTape() &lt;span style="color:#66d9ef">as&lt;/span> tape:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> logits &lt;span style="color:#f92672">=&lt;/span> model(features, training&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#66d9ef">True&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> loss &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>losses&lt;span style="color:#f92672">.&lt;/span>sparse_categorical_crossentropy(labels, logits)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> grads &lt;span style="color:#f92672">=&lt;/span> tape&lt;span style="color:#f92672">.&lt;/span>gradient(loss, model&lt;span style="color:#f92672">.&lt;/span>trainable_variables)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> optimizer&lt;span style="color:#f92672">.&lt;/span>apply_gradients(zip(grads, model&lt;span style="color:#f92672">.&lt;/span>trainable_variables))
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> strategy&lt;span style="color:#f92672">.&lt;/span>run(step_fn, args&lt;span style="color:#f92672">=&lt;/span>(next(iterator),))
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>train_step(iterator)
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="tfsaved_model">tf.saved_model&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-python" data-lang="python">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Define a tf module.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">class&lt;/span> &lt;span style="color:#a6e22e">Adder&lt;/span>(tf&lt;span style="color:#f92672">.&lt;/span>Module):
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#a6e22e">@tf.function&lt;/span>(input_signature&lt;span style="color:#f92672">=&lt;/span>[tf&lt;span style="color:#f92672">.&lt;/span>TensorSpec(shape&lt;span style="color:#f92672">=&lt;/span>[], dtype&lt;span style="color:#f92672">=&lt;/span>tf&lt;span style="color:#f92672">.&lt;/span>float32)])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">def&lt;/span> &lt;span style="color:#a6e22e">add&lt;/span>(self, x):
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">return&lt;/span> x &lt;span style="color:#f92672">+&lt;/span> x
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Save the tf module as our model.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>model &lt;span style="color:#f92672">=&lt;/span> Adder()
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>saved_model&lt;span style="color:#f92672">.&lt;/span>save(model, &lt;span style="color:#e6db74">&amp;#39;/tmp/adder&amp;#39;&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Load the model.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>loaded_model &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>saved_model&lt;span style="color:#f92672">.&lt;/span>load(&lt;span style="color:#e6db74">&amp;#39;/tmp/adder&amp;#39;&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>loaded_model&lt;span style="color:#f92672">.&lt;/span>add(&lt;span style="color:#ae81ff">1.&lt;/span>) &lt;span style="color:#75715e"># Returns a tensor with a value of 2.0.&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="tfkeras">tf.keras&lt;/h3>
&lt;h4 id="model">Model&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-python" data-lang="python">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Defining a keras model.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">import&lt;/span> tensorflow &lt;span style="color:#66d9ef">as&lt;/span> tf
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">class&lt;/span> &lt;span style="color:#a6e22e">MyModel&lt;/span>(tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>Model):
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">def&lt;/span> __init__(self):
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> super()&lt;span style="color:#f92672">.&lt;/span>__init__()
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> self&lt;span style="color:#f92672">.&lt;/span>dense1 &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>layers&lt;span style="color:#f92672">.&lt;/span>Dense(&lt;span style="color:#ae81ff">4&lt;/span>, activation&lt;span style="color:#f92672">=&lt;/span>tf&lt;span style="color:#f92672">.&lt;/span>nn&lt;span style="color:#f92672">.&lt;/span>relu)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> self&lt;span style="color:#f92672">.&lt;/span>dense2 &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>layers&lt;span style="color:#f92672">.&lt;/span>Dense(&lt;span style="color:#ae81ff">5&lt;/span>, activation&lt;span style="color:#f92672">=&lt;/span>tf&lt;span style="color:#f92672">.&lt;/span>nn&lt;span style="color:#f92672">.&lt;/span>softmax)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">def&lt;/span> &lt;span style="color:#a6e22e">call&lt;/span>(self, inputs):
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> x &lt;span style="color:#f92672">=&lt;/span> self&lt;span style="color:#f92672">.&lt;/span>dense1(inputs)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">return&lt;/span> self&lt;span style="color:#f92672">.&lt;/span>dense2(x)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>model &lt;span style="color:#f92672">=&lt;/span> MyModel()
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h4 id="sequential">Sequential&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-python" data-lang="python">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Optionally, the first layer can receive an `input_shape` argument:&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>model &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>Sequential()
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>model&lt;span style="color:#f92672">.&lt;/span>add(tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>layers&lt;span style="color:#f92672">.&lt;/span>Dense(&lt;span style="color:#ae81ff">8&lt;/span>, input_shape&lt;span style="color:#f92672">=&lt;/span>(&lt;span style="color:#ae81ff">16&lt;/span>,)))
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Afterwards, we do automatic shape inference:&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>model&lt;span style="color:#f92672">.&lt;/span>add(tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>layers&lt;span style="color:#f92672">.&lt;/span>Dense(&lt;span style="color:#ae81ff">4&lt;/span>))
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># This is identical to the following:&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>model &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>Sequential()
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>model&lt;span style="color:#f92672">.&lt;/span>add(tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>Input(shape&lt;span style="color:#f92672">=&lt;/span>(&lt;span style="color:#ae81ff">16&lt;/span>,)))
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>model&lt;span style="color:#f92672">.&lt;/span>add(tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>layers&lt;span style="color:#f92672">.&lt;/span>Dense(&lt;span style="color:#ae81ff">8&lt;/span>))
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Note that you can also omit the `input_shape` argument.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># In that case the model doesn&amp;#39;t have any weights until the first call&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># to a training/evaluation method (since it isn&amp;#39;t yet built):&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>model &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>Sequential()
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>model&lt;span style="color:#f92672">.&lt;/span>add(tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>layers&lt;span style="color:#f92672">.&lt;/span>Dense(&lt;span style="color:#ae81ff">8&lt;/span>))
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>model&lt;span style="color:#f92672">.&lt;/span>add(tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>layers&lt;span style="color:#f92672">.&lt;/span>Dense(&lt;span style="color:#ae81ff">4&lt;/span>))
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># model.weights not created yet&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Whereas if you specify the input shape, the model gets built&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># continuously as you are adding layers:&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>model &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>Sequential()
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>model&lt;span style="color:#f92672">.&lt;/span>add(tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>layers&lt;span style="color:#f92672">.&lt;/span>Dense(&lt;span style="color:#ae81ff">8&lt;/span>, input_shape&lt;span style="color:#f92672">=&lt;/span>(&lt;span style="color:#ae81ff">16&lt;/span>,)))
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>model&lt;span style="color:#f92672">.&lt;/span>add(tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>layers&lt;span style="color:#f92672">.&lt;/span>Dense(&lt;span style="color:#ae81ff">4&lt;/span>))
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>len(model&lt;span style="color:#f92672">.&lt;/span>weights) &lt;span style="color:#75715e"># Returns &amp;#34;4&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># When using the delayed-build pattern (no input shape specified), you can&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># choose to manually build your model by calling&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># `build(batch_input_shape)`:&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>model &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>Sequential()
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>model&lt;span style="color:#f92672">.&lt;/span>add(tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>layers&lt;span style="color:#f92672">.&lt;/span>Dense(&lt;span style="color:#ae81ff">8&lt;/span>))
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>model&lt;span style="color:#f92672">.&lt;/span>add(tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>layers&lt;span style="color:#f92672">.&lt;/span>Dense(&lt;span style="color:#ae81ff">4&lt;/span>))
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>model&lt;span style="color:#f92672">.&lt;/span>build((&lt;span style="color:#66d9ef">None&lt;/span>, &lt;span style="color:#ae81ff">16&lt;/span>))
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>len(model&lt;span style="color:#f92672">.&lt;/span>weights) &lt;span style="color:#75715e"># Returns &amp;#34;4&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Note that when using the delayed-build pattern (no input shape specified),&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># the model gets built the first time you call `fit`, `eval`, or `predict`,&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># or the first time you call the model on some input data.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>model &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>Sequential()
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>model&lt;span style="color:#f92672">.&lt;/span>add(tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>layers&lt;span style="color:#f92672">.&lt;/span>Dense(&lt;span style="color:#ae81ff">8&lt;/span>))
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>model&lt;span style="color:#f92672">.&lt;/span>add(tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>layers&lt;span style="color:#f92672">.&lt;/span>Dense(&lt;span style="color:#ae81ff">1&lt;/span>))
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>model&lt;span style="color:#f92672">.&lt;/span>compile(optimizer&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#e6db74">&amp;#39;sgd&amp;#39;&lt;/span>, loss&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#e6db74">&amp;#39;mse&amp;#39;&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># This builds the model for the first time:&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>model&lt;span style="color:#f92672">.&lt;/span>fit(x, y, batch_size&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#ae81ff">32&lt;/span>, epochs&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#ae81ff">10&lt;/span>)
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h4 id="layers">Layers&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-python" data-lang="python">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Define a relu activation layer.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>layer &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>layers&lt;span style="color:#f92672">.&lt;/span>Activation(&lt;span style="color:#e6db74">&amp;#39;relu&amp;#39;&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>output &lt;span style="color:#f92672">=&lt;/span> layer([&lt;span style="color:#f92672">-&lt;/span>&lt;span style="color:#ae81ff">3.0&lt;/span>, &lt;span style="color:#f92672">-&lt;/span>&lt;span style="color:#ae81ff">1.0&lt;/span>, &lt;span style="color:#ae81ff">0.0&lt;/span>, &lt;span style="color:#ae81ff">2.0&lt;/span>]) &lt;span style="color:#75715e"># [0.0, 0.0, 0.0, 2.0]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Define an Add layer.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>input_shape &lt;span style="color:#f92672">=&lt;/span> (&lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">3&lt;/span>, &lt;span style="color:#ae81ff">4&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>x1 &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>random&lt;span style="color:#f92672">.&lt;/span>normal(input_shape)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>x2 &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>random&lt;span style="color:#f92672">.&lt;/span>normal(input_shape)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>y &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>layers&lt;span style="color:#f92672">.&lt;/span>Add()([x1, x2]) &lt;span style="color:#75715e"># the shape of y is (2, 3, 4)&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Define an Average layer.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>x1 &lt;span style="color:#f92672">=&lt;/span> np&lt;span style="color:#f92672">.&lt;/span>ones((&lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">2&lt;/span>))
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>x2 &lt;span style="color:#f92672">=&lt;/span> np&lt;span style="color:#f92672">.&lt;/span>zeros((&lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">2&lt;/span>))
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>y &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>layers&lt;span style="color:#f92672">.&lt;/span>Average()([x1, x2]) &lt;span style="color:#75715e"># [[0.5, 0.5], [0.5, 0.5]]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Define an AveragePooling1D layer.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>x &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>constant([&lt;span style="color:#ae81ff">1.&lt;/span>, &lt;span style="color:#ae81ff">2.&lt;/span>, &lt;span style="color:#ae81ff">3.&lt;/span>, &lt;span style="color:#ae81ff">4.&lt;/span>, &lt;span style="color:#ae81ff">5.&lt;/span>])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>x &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>reshape(x, [&lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#ae81ff">5&lt;/span>, &lt;span style="color:#ae81ff">1&lt;/span>])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>avg_pool_1d &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>layers&lt;span style="color:#f92672">.&lt;/span>AveragePooling1D(pool_size&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#ae81ff">2&lt;/span>, strides&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#ae81ff">1&lt;/span>, padding&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#e6db74">&amp;#39;valid&amp;#39;&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>avg_pool_1d(x) &lt;span style="color:#75715e"># [[[1.5], [2.5], [3.5], [4.5]]]&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Define a Concatenate layer.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>x &lt;span style="color:#f92672">=&lt;/span> np&lt;span style="color:#f92672">.&lt;/span>arange(&lt;span style="color:#ae81ff">20&lt;/span>)&lt;span style="color:#f92672">.&lt;/span>reshape(&lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">5&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>y &lt;span style="color:#f92672">=&lt;/span> np&lt;span style="color:#f92672">.&lt;/span>arange(&lt;span style="color:#ae81ff">20&lt;/span>, &lt;span style="color:#ae81ff">30&lt;/span>)&lt;span style="color:#f92672">.&lt;/span>reshape(&lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">1&lt;/span>, &lt;span style="color:#ae81ff">5&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>z &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>layers&lt;span style="color:#f92672">.&lt;/span>Concatenate(axis&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#ae81ff">1&lt;/span>)([x, y]) &lt;span style="color:#75715e"># the shape of z is (2, 3, 5)&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Define a Conv1D layer.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># The inputs are 128-length vectors with 10 timesteps, and the batch size is 4.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>input_shape &lt;span style="color:#f92672">=&lt;/span> (&lt;span style="color:#ae81ff">4&lt;/span>, &lt;span style="color:#ae81ff">10&lt;/span>, &lt;span style="color:#ae81ff">128&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>x &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>random&lt;span style="color:#f92672">.&lt;/span>normal(input_shape)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>y &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>layers&lt;span style="color:#f92672">.&lt;/span>Conv1D(&lt;span style="color:#ae81ff">32&lt;/span>, &lt;span style="color:#ae81ff">3&lt;/span>, activation&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#e6db74">&amp;#39;relu&amp;#39;&lt;/span>, input_shape&lt;span style="color:#f92672">=&lt;/span>input_shape[&lt;span style="color:#ae81ff">1&lt;/span>:])(x) &lt;span style="color:#75715e"># the shape of y is (4, 8, 32)&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Define a Conv2D layer.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>input_shape &lt;span style="color:#f92672">=&lt;/span> (&lt;span style="color:#ae81ff">4&lt;/span>, &lt;span style="color:#ae81ff">28&lt;/span>, &lt;span style="color:#ae81ff">28&lt;/span>, &lt;span style="color:#ae81ff">3&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>x &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>random&lt;span style="color:#f92672">.&lt;/span>normal(input_shape)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>y &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>layers&lt;span style="color:#f92672">.&lt;/span>Conv2D(&lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">3&lt;/span>, activation&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#e6db74">&amp;#39;relu&amp;#39;&lt;/span>, input_shape&lt;span style="color:#f92672">=&lt;/span>input_shape[&lt;span style="color:#ae81ff">1&lt;/span>:])(x) &lt;span style="color:#75715e"># the shape of y is (4, 26, 26, 2)&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Define a Conv3D layer.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>input_shape &lt;span style="color:#f92672">=&lt;/span>(&lt;span style="color:#ae81ff">4&lt;/span>, &lt;span style="color:#ae81ff">28&lt;/span>, &lt;span style="color:#ae81ff">28&lt;/span>, &lt;span style="color:#ae81ff">28&lt;/span>, &lt;span style="color:#ae81ff">1&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>x &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>random&lt;span style="color:#f92672">.&lt;/span>normal(input_shape)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>y &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>layers&lt;span style="color:#f92672">.&lt;/span>Conv3D(&lt;span style="color:#ae81ff">2&lt;/span>, &lt;span style="color:#ae81ff">3&lt;/span>, activation&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#e6db74">&amp;#39;relu&amp;#39;&lt;/span>, input_shape&lt;span style="color:#f92672">=&lt;/span>input_shape[&lt;span style="color:#ae81ff">1&lt;/span>:])(x) &lt;span style="color:#75715e"># the shape of y is (4, 26, 26, 26, 2)&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Define a Dense layer with relu as its activation function.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>layers&lt;span style="color:#f92672">.&lt;/span>Dense(&lt;span style="color:#ae81ff">32&lt;/span>, activation&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#e6db74">&amp;#39;relu&amp;#39;&lt;/span>))
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Define a Dropout layer with a 20% drop rate.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>layers&lt;span style="color:#f92672">.&lt;/span>Dropout(&lt;span style="color:#ae81ff">.2&lt;/span>, input_shape&lt;span style="color:#f92672">=&lt;/span>(&lt;span style="color:#ae81ff">2&lt;/span>,))
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Define an Embedding layer with an input dimension of 1000 and output dimension of 64.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>layers&lt;span style="color:#f92672">.&lt;/span>Embedding(&lt;span style="color:#ae81ff">1000&lt;/span>, &lt;span style="color:#ae81ff">64&lt;/span>, input_length&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#ae81ff">10&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Define a Flatten layer.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>Flatten()
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Define a Hashing layer with 32 bins.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>layers&lt;span style="color:#f92672">.&lt;/span>Hashing(num_bins&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#ae81ff">32&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Define a four-units LSTM layer.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>layers&lt;span style="color:#f92672">.&lt;/span>LSTM(&lt;span style="color:#ae81ff">4&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Define a string look-up layer.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>vocab &lt;span style="color:#f92672">=&lt;/span> [&lt;span style="color:#e6db74">&amp;#34;a&amp;#34;&lt;/span>, &lt;span style="color:#e6db74">&amp;#34;b&amp;#34;&lt;/span>, &lt;span style="color:#e6db74">&amp;#34;c&amp;#34;&lt;/span>, &lt;span style="color:#e6db74">&amp;#34;d&amp;#34;&lt;/span>]
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>data &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>constant([[&lt;span style="color:#e6db74">&amp;#34;a&amp;#34;&lt;/span>, &lt;span style="color:#e6db74">&amp;#34;c&amp;#34;&lt;/span>, &lt;span style="color:#e6db74">&amp;#34;d&amp;#34;&lt;/span>], [&lt;span style="color:#e6db74">&amp;#34;d&amp;#34;&lt;/span>, &lt;span style="color:#e6db74">&amp;#34;z&amp;#34;&lt;/span>, &lt;span style="color:#e6db74">&amp;#34;b&amp;#34;&lt;/span>]])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>layer &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>layers&lt;span style="color:#f92672">.&lt;/span>StringLookup(vocabulary&lt;span style="color:#f92672">=&lt;/span>vocab)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>layer(data) &lt;span style="color:#75715e"># Returns [[1, 3, 4], [4, 0, 2]]&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h4 id="save--load">Save &amp;amp; Load&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-python" data-lang="python">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Define a model.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>model &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>Sequential(
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> [tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>layers&lt;span style="color:#f92672">.&lt;/span>Dense(&lt;span style="color:#ae81ff">5&lt;/span>, input_shape&lt;span style="color:#f92672">=&lt;/span>(&lt;span style="color:#ae81ff">3&lt;/span>,)),
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>layers&lt;span style="color:#f92672">.&lt;/span>Softmax()]
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Save the model to /tmp/model.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>model&lt;span style="color:#f92672">.&lt;/span>save_model(&lt;span style="color:#e6db74">&amp;#39;/tmp/model&amp;#39;&lt;/span>) &lt;span style="color:#75715e"># Or model.save(&amp;#39;/tmp/model&amp;#39;)&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Load the model back from /tmp/model&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>loaded_model &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>models&lt;span style="color:#f92672">.&lt;/span>load_model(&lt;span style="color:#e6db74">&amp;#39;/tmp/model&amp;#39;&lt;/span>)
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="example-model-training-pipelines">Example Model Training Pipelines&lt;/h2>
&lt;h3 id="a-sequential-model-training-pipeline">A Sequential Model Training Pipeline&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-python" data-lang="python">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">import&lt;/span> tensorflow &lt;span style="color:#66d9ef">as&lt;/span> tf
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">import&lt;/span> tensorflow.keras.datasets.mnist &lt;span style="color:#66d9ef">as&lt;/span> mnist
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Load training data.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>(x_train, y_train), (x_test, y_test) &lt;span style="color:#f92672">=&lt;/span> mnist&lt;span style="color:#f92672">.&lt;/span>load_data()
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>x_train, x_test &lt;span style="color:#f92672">=&lt;/span> x_train &lt;span style="color:#f92672">/&lt;/span> &lt;span style="color:#ae81ff">255.0&lt;/span>, x_test &lt;span style="color:#f92672">/&lt;/span> &lt;span style="color:#ae81ff">255.0&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Construct the model.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>model &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>models&lt;span style="color:#f92672">.&lt;/span>Sequential([
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>layers&lt;span style="color:#f92672">.&lt;/span>Flatten(input_shape&lt;span style="color:#f92672">=&lt;/span>(&lt;span style="color:#ae81ff">28&lt;/span>, &lt;span style="color:#ae81ff">28&lt;/span>)),
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>layers&lt;span style="color:#f92672">.&lt;/span>Dense(&lt;span style="color:#ae81ff">128&lt;/span>, activation&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#e6db74">&amp;#39;relu&amp;#39;&lt;/span>),
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>layers&lt;span style="color:#f92672">.&lt;/span>Dropout(&lt;span style="color:#ae81ff">0.2&lt;/span>),
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>layers&lt;span style="color:#f92672">.&lt;/span>Dense(&lt;span style="color:#ae81ff">10&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Define the loss function.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>loss_fn &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>losses&lt;span style="color:#f92672">.&lt;/span>SparseCategoricalCrossentropy(from_logits&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#66d9ef">True&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Compile the model.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>model&lt;span style="color:#f92672">.&lt;/span>compile(optimizer&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#e6db74">&amp;#39;adam&amp;#39;&lt;/span>, loss&lt;span style="color:#f92672">=&lt;/span>loss_fn, metrics&lt;span style="color:#f92672">=&lt;/span>[&lt;span style="color:#e6db74">&amp;#39;accuracy&amp;#39;&lt;/span>])
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Train the model.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>model&lt;span style="color:#f92672">.&lt;/span>fit(x_train, y_train, epochs&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#ae81ff">5&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Evaluate the model.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>model&lt;span style="color:#f92672">.&lt;/span>evaluate(x_test, y_test, verbose&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#ae81ff">2&lt;/span>)
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="a-custom-model-training-pipeline">A Custom Model Training Pipeline&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-python" data-lang="python">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">import&lt;/span> tensorflow &lt;span style="color:#66d9ef">as&lt;/span> tf
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">from&lt;/span> tensorflow.keras.layers &lt;span style="color:#f92672">import&lt;/span> Dense, Flatten, Conv2D
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#f92672">from&lt;/span> tensorflow.keras &lt;span style="color:#f92672">import&lt;/span> Model
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Get dataset.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>mnist &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>datasets&lt;span style="color:#f92672">.&lt;/span>mnist
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>(x_train, y_train), (x_test, y_test) &lt;span style="color:#f92672">=&lt;/span> mnist&lt;span style="color:#f92672">.&lt;/span>load_data()
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>x_train, x_test &lt;span style="color:#f92672">=&lt;/span> x_train &lt;span style="color:#f92672">/&lt;/span> &lt;span style="color:#ae81ff">255.0&lt;/span>, x_test &lt;span style="color:#f92672">/&lt;/span> &lt;span style="color:#ae81ff">255.0&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Add a channels dimension&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>x_train &lt;span style="color:#f92672">=&lt;/span> x_train[&lt;span style="color:#f92672">...&lt;/span>, tf&lt;span style="color:#f92672">.&lt;/span>newaxis]&lt;span style="color:#f92672">.&lt;/span>astype(&lt;span style="color:#e6db74">&amp;#34;float32&amp;#34;&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>x_test &lt;span style="color:#f92672">=&lt;/span> x_test[&lt;span style="color:#f92672">...&lt;/span>, tf&lt;span style="color:#f92672">.&lt;/span>newaxis]&lt;span style="color:#f92672">.&lt;/span>astype(&lt;span style="color:#e6db74">&amp;#34;float32&amp;#34;&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Process dataset with tf.data.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>train_ds &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>data&lt;span style="color:#f92672">.&lt;/span>Dataset&lt;span style="color:#f92672">.&lt;/span>from_tensor_slices((x_train, y_train))&lt;span style="color:#f92672">.&lt;/span>shuffle(&lt;span style="color:#ae81ff">10000&lt;/span>)&lt;span style="color:#f92672">.&lt;/span>batch(&lt;span style="color:#ae81ff">32&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>test_ds &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>data&lt;span style="color:#f92672">.&lt;/span>Dataset&lt;span style="color:#f92672">.&lt;/span>from_tensor_slices((x_test, y_test))&lt;span style="color:#f92672">.&lt;/span>batch(&lt;span style="color:#ae81ff">32&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Define the model.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">class&lt;/span> &lt;span style="color:#a6e22e">MyModel&lt;/span>(Model):
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">def&lt;/span> __init__(self):
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> super(MyModel, self)&lt;span style="color:#f92672">.&lt;/span>__init__()
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> self&lt;span style="color:#f92672">.&lt;/span>conv1 &lt;span style="color:#f92672">=&lt;/span> Conv2D(&lt;span style="color:#ae81ff">32&lt;/span>, &lt;span style="color:#ae81ff">3&lt;/span>, activation&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#e6db74">&amp;#39;relu&amp;#39;&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> self&lt;span style="color:#f92672">.&lt;/span>flatten &lt;span style="color:#f92672">=&lt;/span> Flatten()
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> self&lt;span style="color:#f92672">.&lt;/span>d1 &lt;span style="color:#f92672">=&lt;/span> Dense(&lt;span style="color:#ae81ff">128&lt;/span>, activation&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#e6db74">&amp;#39;relu&amp;#39;&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> self&lt;span style="color:#f92672">.&lt;/span>d2 &lt;span style="color:#f92672">=&lt;/span> Dense(&lt;span style="color:#ae81ff">10&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">def&lt;/span> &lt;span style="color:#a6e22e">call&lt;/span>(self, x):
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> x &lt;span style="color:#f92672">=&lt;/span> self&lt;span style="color:#f92672">.&lt;/span>conv1(x)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> x &lt;span style="color:#f92672">=&lt;/span> self&lt;span style="color:#f92672">.&lt;/span>flatten(x)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> x &lt;span style="color:#f92672">=&lt;/span> self&lt;span style="color:#f92672">.&lt;/span>d1(x)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">return&lt;/span> self&lt;span style="color:#f92672">.&lt;/span>d2(x)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create an instance of the model&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>model &lt;span style="color:#f92672">=&lt;/span> MyModel()
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Define loss function.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>loss_object &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>losses&lt;span style="color:#f92672">.&lt;/span>SparseCategoricalCrossentropy(from_logits&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#66d9ef">True&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Define optimizer.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>optimizer &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>optimizers&lt;span style="color:#f92672">.&lt;/span>Adam()
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Define train loss and accuracy.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>train_loss &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>metrics&lt;span style="color:#f92672">.&lt;/span>Mean(name&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#e6db74">&amp;#39;train_loss&amp;#39;&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>train_accuracy &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>metrics&lt;span style="color:#f92672">.&lt;/span>SparseCategoricalAccuracy(name&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#e6db74">&amp;#39;train_accuracy&amp;#39;&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Define test loss and accuracy.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>test_loss &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>metrics&lt;span style="color:#f92672">.&lt;/span>Mean(name&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#e6db74">&amp;#39;test_loss&amp;#39;&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>test_accuracy &lt;span style="color:#f92672">=&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>keras&lt;span style="color:#f92672">.&lt;/span>metrics&lt;span style="color:#f92672">.&lt;/span>SparseCategoricalAccuracy(name&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#e6db74">&amp;#39;test_accuracy&amp;#39;&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Define the train step with tf.function.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#a6e22e">@tf.function&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">def&lt;/span> &lt;span style="color:#a6e22e">train_step&lt;/span>(images, labels):
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">with&lt;/span> tf&lt;span style="color:#f92672">.&lt;/span>GradientTape() &lt;span style="color:#66d9ef">as&lt;/span> tape:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#75715e"># training=True is only needed if there are layers with different&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#75715e"># behavior during training versus inference (e.g. Dropout).&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> predictions &lt;span style="color:#f92672">=&lt;/span> model(images, training&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#66d9ef">True&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> loss &lt;span style="color:#f92672">=&lt;/span> loss_object(labels, predictions)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> gradients &lt;span style="color:#f92672">=&lt;/span> tape&lt;span style="color:#f92672">.&lt;/span>gradient(loss, model&lt;span style="color:#f92672">.&lt;/span>trainable_variables)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> optimizer&lt;span style="color:#f92672">.&lt;/span>apply_gradients(zip(gradients, model&lt;span style="color:#f92672">.&lt;/span>trainable_variables))
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> train_loss(loss)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> train_accuracy(labels, predictions)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Define the test step with tf.function.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#a6e22e">@tf.function&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">def&lt;/span> &lt;span style="color:#a6e22e">test_step&lt;/span>(images, labels):
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#75715e"># training=False is only needed if there are layers with different&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#75715e"># behavior during training versus inference (e.g. Dropout).&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> predictions &lt;span style="color:#f92672">=&lt;/span> model(images, training&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#66d9ef">False&lt;/span>)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> t_loss &lt;span style="color:#f92672">=&lt;/span> loss_object(labels, predictions)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> test_loss(t_loss)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> test_accuracy(labels, predictions)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Train and evaluate the model.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">for&lt;/span> epoch &lt;span style="color:#f92672">in&lt;/span> range(&lt;span style="color:#ae81ff">4&lt;/span>):
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#75715e"># Reset the metrics at the start of the next epoch&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> train_loss&lt;span style="color:#f92672">.&lt;/span>reset_states()
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> train_accuracy&lt;span style="color:#f92672">.&lt;/span>reset_states()
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> test_loss&lt;span style="color:#f92672">.&lt;/span>reset_states()
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> test_accuracy&lt;span style="color:#f92672">.&lt;/span>reset_states()
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">for&lt;/span> images, labels &lt;span style="color:#f92672">in&lt;/span> train_ds:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> train_step(images, labels)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">for&lt;/span> test_images, test_labels &lt;span style="color:#f92672">in&lt;/span> test_ds:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> test_step(test_images, test_labels)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> print(
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#e6db74">f&lt;/span>&lt;span style="color:#e6db74">&amp;#39;Epoch &lt;/span>&lt;span style="color:#e6db74">{&lt;/span>epoch &lt;span style="color:#f92672">+&lt;/span> &lt;span style="color:#ae81ff">1&lt;/span>&lt;span style="color:#e6db74">}&lt;/span>&lt;span style="color:#e6db74">, &amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#e6db74">f&lt;/span>&lt;span style="color:#e6db74">&amp;#39;Loss: &lt;/span>&lt;span style="color:#e6db74">{&lt;/span>train_loss&lt;span style="color:#f92672">.&lt;/span>result()&lt;span style="color:#e6db74">}&lt;/span>&lt;span style="color:#e6db74">, &amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#e6db74">f&lt;/span>&lt;span style="color:#e6db74">&amp;#39;Accuracy: &lt;/span>&lt;span style="color:#e6db74">{&lt;/span>train_accuracy&lt;span style="color:#f92672">.&lt;/span>result() &lt;span style="color:#f92672">*&lt;/span> &lt;span style="color:#ae81ff">100&lt;/span>&lt;span style="color:#e6db74">}&lt;/span>&lt;span style="color:#e6db74">, &amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#e6db74">f&lt;/span>&lt;span style="color:#e6db74">&amp;#39;Test Loss: &lt;/span>&lt;span style="color:#e6db74">{&lt;/span>test_loss&lt;span style="color:#f92672">.&lt;/span>result()&lt;span style="color:#e6db74">}&lt;/span>&lt;span style="color:#e6db74">, &amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#e6db74">f&lt;/span>&lt;span style="color:#e6db74">&amp;#39;Test Accuracy: &lt;/span>&lt;span style="color:#e6db74">{&lt;/span>test_accuracy&lt;span style="color:#f92672">.&lt;/span>result() &lt;span style="color:#f92672">*&lt;/span> &lt;span style="color:#ae81ff">100&lt;/span>&lt;span style="color:#e6db74">}&lt;/span>&lt;span style="color:#e6db74">&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> )
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div></description></item><item><title>Cheatsheets: Terminal Escape Code Cheatsheet</title><link>https://devmemo.gitlab.io/cheatsheets/terminal_escape_code/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://devmemo.gitlab.io/cheatsheets/terminal_escape_code/</guid><description>
&lt;h2 id="control-escape-codes">Control Escape Codes&lt;/h2>
&lt;div class="sw-table-container dark-scrollbar">
&lt;table class="sw-table" id="%!s(&lt;nil>)">
&lt;thead>
&lt;tr>
&lt;th>Key Name&lt;/th>
&lt;th>Escape Code&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>&lt;code>S-up&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;2A&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>S-down&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;2B&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>S-right&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;2C&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>S-left&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;2D&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>S-end&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;2F&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>S-home&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;2H&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>M-up&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;3A&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>M-down&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;3B&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>M-right&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;3C&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>M-left&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;3D&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>M-end&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;3F&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>M-home&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;3H&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>M-S-up&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;4A&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>M-S-down&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;4B&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>M-S-right&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;4C&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>M-S-left&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;4D&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>M-S-end&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;4F&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>M-S-home&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;4H&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-up&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;5A&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-down&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;5B&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-right&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;5C&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-left&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;5D&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-end&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;5F&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-home&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;5H&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-S-up&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;6A&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-S-down&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;6B&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-S-right&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;6C&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-S-left&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;6D&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-S-end&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;6F&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-S-home&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;6H&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-up&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;7A&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-down&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;7B&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-right&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;7C&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-left&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;7D&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-end&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;7F&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-home&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;7H&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-S-up&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;8A&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-S-down&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;8B&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-S-right&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;8C&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-S-left&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;8D&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-S-end&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;8F&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-S-home&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;8H&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>M-insert&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[2;3~&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>M-S-insert&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[2;4~&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-insert&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[2;5~&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-S-insert&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[2;6~&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-insert&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[2;7~&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-S-insert&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[2;8~&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>S-delete&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[3;2~&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>M-delete&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[3;3~&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>M-S-delete&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[3;4~&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-delete&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[3;5~&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-S-delete&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[3;6~&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-delete&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[3;7~&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-S-delete&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[3;8~&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>S-prior&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[5;2~&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>M-prior&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[5;3~&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>M-S-prior&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[5;4~&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-prior&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[5;5~&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-S-prior&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[5;6~&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-prior&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[5;7~&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-S-prior&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[5;8~&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>S-next&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[6;2~&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>M-next&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[6;3~&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>M-S-next&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[6;4~&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-next&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[6;5~&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-S-next&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[6;6~&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-next&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[6;7~&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-S-next&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[6;8~&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-backspace&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[127;5u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-return&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[13;13u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>S-return&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[13;2u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-return&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[13;5u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-S-return&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[13;6u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-tab&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[9;13u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>[S-tab&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[9;2u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>[C-tab&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[9;5u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>[C-S-tab&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[9;6u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-S-1&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[33;14u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-S-1&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[33;6u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-\&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[34;14u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-\&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[34;6u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-S-3&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[35;14u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-S-3&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[35;6u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-S-4&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[36;14u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-S-4&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[36;6u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-S-5&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[37;14u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-S-5&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[37;6u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-S-7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38;14u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-S-7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38;6u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-'&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[39;13u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-'&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[39;5u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-S-9&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[40;14u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-S-9&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[40;6u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-S-0&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[41;14u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-S-0&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[41;6u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-S-8&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[42;14u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-S-8&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[42;6u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-S-=&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[43;14u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-S-=&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[43;6u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-,&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[44;13u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-,&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[44;5u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-.&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[46;13u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-.&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[46;5u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-/&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[47;13u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-/&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[47;5u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-0&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48;13u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-0&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48;5u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-1&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[49;13u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-1&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[49;5u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-2&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[50;13u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-2&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[50;5u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-3&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[51;13u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-3&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[51;5u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-4&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[52;13u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-4&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[52;5u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-5&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[53;13u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-5&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[53;5u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-6&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[54;13u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-6&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[54;5u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[55;13u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[55;5u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-8&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[56;13u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-8&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[56;5u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-9&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[57;13u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-9&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[57;5u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-:&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[58;14u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-:&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[58;6u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-;&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[59;13u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-;&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[59;5u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-S-,&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[60;14u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-S-,&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[60;6u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-=&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[61;13u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-=&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[61;5u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-S-.&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[62;14u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-S-.&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[62;6u&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-M-\\&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[92;13u&lt;/code>&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/div>
&lt;h2 id="8-color-escape-codes">8 Color Escape Codes&lt;/h2>
&lt;div class="sw-lg-table-container dark-scrollbar">
&lt;table class="sw-table" id="">
&lt;thead>
&lt;tr>
&lt;th>Name&lt;/th>
&lt;th>Color&lt;/th>
&lt;th>Hex Color Code&lt;/th>
&lt;th>Foreground Escape Code&lt;/th>
&lt;th>Background Escape Code&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>Black&lt;/td>
&lt;td>&lt;span style="background-color:#000000;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#000000&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;30m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;40m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Red&lt;/td>
&lt;td>&lt;span style="background-color:#cc0000;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#cc0000&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;31m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;41m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Green&lt;/td>
&lt;td>&lt;span style="background-color:#4e9a06;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#4e9a06&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;32m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;42m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Yellow&lt;/td>
&lt;td>&lt;span style="background-color:#c4a000;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#c4a000&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;33m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;43m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Blue&lt;/td>
&lt;td>&lt;span style="background-color:#729fcf;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#729fcf&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;34m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;44m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Magenta&lt;/td>
&lt;td>&lt;span style="background-color:#75507b;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#75507b&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;35m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;45m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Cyan&lt;/td>
&lt;td>&lt;span style="background-color:#06989a;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#06989a&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;36m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;46m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>White&lt;/td>
&lt;td>&lt;span style="background-color:#d3d7cf;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d3d7cf&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;37m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;47m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Default&lt;/td>
&lt;td>&lt;/td>
&lt;td>&lt;/td>
&lt;td>&lt;code>\x1b[1;39m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[1;49m&lt;/code>&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/div>
&lt;h2 id="256-color-escape-codes">256 Color Escape Codes&lt;/h2>
&lt;div class="sw-lg-table-container dark-scrollbar">
&lt;table class="sw-table" id="">
&lt;thead>
&lt;tr>
&lt;th>&lt;/th>
&lt;th>Name&lt;/th>
&lt;th>Color&lt;/th>
&lt;th>Hex Color Code&lt;/th>
&lt;th>Foreground Escape Code&lt;/th>
&lt;th>Background Escape Code&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>0&lt;/td>
&lt;td>Black (SYSTEM)&lt;/td>
&lt;td>&lt;span style="background-color:#000000;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#000000&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:0m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:0m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>1&lt;/td>
&lt;td>Maroon (SYSTEM)&lt;/td>
&lt;td>&lt;span style="background-color:#800000;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#800000&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:1m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:1m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>2&lt;/td>
&lt;td>Green (SYSTEM)&lt;/td>
&lt;td>&lt;span style="background-color:#008000;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#008000&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:2m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:2m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>3&lt;/td>
&lt;td>Olive (SYSTEM)&lt;/td>
&lt;td>&lt;span style="background-color:#808000;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#808000&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:3m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:3m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>4&lt;/td>
&lt;td>Navy (SYSTEM)&lt;/td>
&lt;td>&lt;span style="background-color:#000080;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#000080&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:4m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:4m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>5&lt;/td>
&lt;td>Purple (SYSTEM)&lt;/td>
&lt;td>&lt;span style="background-color:#800080;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#800080&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:5m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:5m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>6&lt;/td>
&lt;td>Teal (SYSTEM)&lt;/td>
&lt;td>&lt;span style="background-color:#008080;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#008080&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:6m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:6m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>7&lt;/td>
&lt;td>Silver (SYSTEM)&lt;/td>
&lt;td>&lt;span style="background-color:#c0c0c0;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#c0c0c0&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:7m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:7m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>8&lt;/td>
&lt;td>Grey (SYSTEM)&lt;/td>
&lt;td>&lt;span style="background-color:#808080;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#808080&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:8m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:8m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>9&lt;/td>
&lt;td>Red (SYSTEM)&lt;/td>
&lt;td>&lt;span style="background-color:#ff0000;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ff0000&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:9m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:9m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>10&lt;/td>
&lt;td>Lime (SYSTEM)&lt;/td>
&lt;td>&lt;span style="background-color:#00ff00;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#00ff00&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:10m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:10m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>11&lt;/td>
&lt;td>Yellow (SYSTEM)&lt;/td>
&lt;td>&lt;span style="background-color:#ffff00;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ffff00&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:11m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:11m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>12&lt;/td>
&lt;td>Blue (SYSTEM)&lt;/td>
&lt;td>&lt;span style="background-color:#0000ff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#0000ff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:12m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:12m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>13&lt;/td>
&lt;td>Fuchsia (SYSTEM)&lt;/td>
&lt;td>&lt;span style="background-color:#ff00ff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ff00ff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:13m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:13m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>14&lt;/td>
&lt;td>Aqua (SYSTEM)&lt;/td>
&lt;td>&lt;span style="background-color:#00ffff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#00ffff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:14m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:14m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>15&lt;/td>
&lt;td>White (SYSTEM)&lt;/td>
&lt;td>&lt;span style="background-color:#ffffff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ffffff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:15m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:15m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>16&lt;/td>
&lt;td>Grey0&lt;/td>
&lt;td>&lt;span style="background-color:#000000;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#000000&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:16m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:16m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>17&lt;/td>
&lt;td>NavyBlue&lt;/td>
&lt;td>&lt;span style="background-color:#00005f;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#00005f&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:17m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:17m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>18&lt;/td>
&lt;td>DarkBlue&lt;/td>
&lt;td>&lt;span style="background-color:#000087;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#000087&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:18m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:18m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>19&lt;/td>
&lt;td>Blue3&lt;/td>
&lt;td>&lt;span style="background-color:#0000af;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#0000af&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:19m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:19m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>20&lt;/td>
&lt;td>Blue3&lt;/td>
&lt;td>&lt;span style="background-color:#0000d7;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#0000d7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:20m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:20m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>21&lt;/td>
&lt;td>Blue1&lt;/td>
&lt;td>&lt;span style="background-color:#0000ff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#0000ff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:21m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:21m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>22&lt;/td>
&lt;td>DarkGreen&lt;/td>
&lt;td>&lt;span style="background-color:#005f00;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#005f00&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:22m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:22m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>23&lt;/td>
&lt;td>DeepSkyBlue4&lt;/td>
&lt;td>&lt;span style="background-color:#005f5f;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#005f5f&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:23m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:23m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>24&lt;/td>
&lt;td>DeepSkyBlue4&lt;/td>
&lt;td>&lt;span style="background-color:#005f87;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#005f87&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:24m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:24m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>25&lt;/td>
&lt;td>DeepSkyBlue4&lt;/td>
&lt;td>&lt;span style="background-color:#005faf;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#005faf&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:25m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:25m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>26&lt;/td>
&lt;td>DodgerBlue3&lt;/td>
&lt;td>&lt;span style="background-color:#005fd7;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#005fd7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:26m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:26m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>27&lt;/td>
&lt;td>DodgerBlue2&lt;/td>
&lt;td>&lt;span style="background-color:#005fff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#005fff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:27m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:27m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>28&lt;/td>
&lt;td>Green4&lt;/td>
&lt;td>&lt;span style="background-color:#008700;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#008700&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:28m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:28m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>29&lt;/td>
&lt;td>SpringGreen4&lt;/td>
&lt;td>&lt;span style="background-color:#00875f;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#00875f&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:29m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:29m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>30&lt;/td>
&lt;td>Turquoise4&lt;/td>
&lt;td>&lt;span style="background-color:#008787;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#008787&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:30m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:30m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>31&lt;/td>
&lt;td>DeepSkyBlue3&lt;/td>
&lt;td>&lt;span style="background-color:#0087af;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#0087af&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:31m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:31m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>32&lt;/td>
&lt;td>DeepSkyBlue3&lt;/td>
&lt;td>&lt;span style="background-color:#0087d7;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#0087d7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:32m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:32m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>33&lt;/td>
&lt;td>DodgerBlue1&lt;/td>
&lt;td>&lt;span style="background-color:#0087ff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#0087ff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:33m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:33m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>34&lt;/td>
&lt;td>Green3&lt;/td>
&lt;td>&lt;span style="background-color:#00af00;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#00af00&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:34m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:34m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>35&lt;/td>
&lt;td>SpringGreen3&lt;/td>
&lt;td>&lt;span style="background-color:#00af5f;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#00af5f&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:35m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:35m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>36&lt;/td>
&lt;td>DarkCyan&lt;/td>
&lt;td>&lt;span style="background-color:#00af87;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#00af87&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:36m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:36m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>37&lt;/td>
&lt;td>LightSeaGreen&lt;/td>
&lt;td>&lt;span style="background-color:#00afaf;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#00afaf&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:37m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:37m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>38&lt;/td>
&lt;td>DeepSkyBlue2&lt;/td>
&lt;td>&lt;span style="background-color:#00afd7;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#00afd7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:38m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:38m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>39&lt;/td>
&lt;td>DeepSkyBlue1&lt;/td>
&lt;td>&lt;span style="background-color:#00afff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#00afff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:39m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:39m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>40&lt;/td>
&lt;td>Green3&lt;/td>
&lt;td>&lt;span style="background-color:#00d700;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#00d700&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:40m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:40m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>41&lt;/td>
&lt;td>SpringGreen3&lt;/td>
&lt;td>&lt;span style="background-color:#00d75f;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#00d75f&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:41m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:41m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>42&lt;/td>
&lt;td>SpringGreen2&lt;/td>
&lt;td>&lt;span style="background-color:#00d787;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#00d787&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:42m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:42m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>43&lt;/td>
&lt;td>Cyan3&lt;/td>
&lt;td>&lt;span style="background-color:#00d7af;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#00d7af&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:43m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:43m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>44&lt;/td>
&lt;td>DarkTurquoise&lt;/td>
&lt;td>&lt;span style="background-color:#00d7d7;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#00d7d7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:44m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:44m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>45&lt;/td>
&lt;td>Turquoise2&lt;/td>
&lt;td>&lt;span style="background-color:#00d7ff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#00d7ff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:45m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:45m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>46&lt;/td>
&lt;td>Green1&lt;/td>
&lt;td>&lt;span style="background-color:#00ff00;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#00ff00&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:46m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:46m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>47&lt;/td>
&lt;td>SpringGreen2&lt;/td>
&lt;td>&lt;span style="background-color:#00ff5f;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#00ff5f&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:47m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:47m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>48&lt;/td>
&lt;td>SpringGreen1&lt;/td>
&lt;td>&lt;span style="background-color:#00ff87;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#00ff87&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:48m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:48m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>49&lt;/td>
&lt;td>MediumSpringGreen&lt;/td>
&lt;td>&lt;span style="background-color:#00ffaf;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#00ffaf&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:49m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:49m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>50&lt;/td>
&lt;td>Cyan2&lt;/td>
&lt;td>&lt;span style="background-color:#00ffd7;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#00ffd7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:50m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:50m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>51&lt;/td>
&lt;td>Cyan1&lt;/td>
&lt;td>&lt;span style="background-color:#00ffff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#00ffff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:51m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:51m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>52&lt;/td>
&lt;td>DarkRed&lt;/td>
&lt;td>&lt;span style="background-color:#5f0000;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#5f0000&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:52m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:52m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>53&lt;/td>
&lt;td>DeepPink4&lt;/td>
&lt;td>&lt;span style="background-color:#5f005f;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#5f005f&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:53m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:53m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>54&lt;/td>
&lt;td>Purple4&lt;/td>
&lt;td>&lt;span style="background-color:#5f0087;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#5f0087&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:54m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:54m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>55&lt;/td>
&lt;td>Purple4&lt;/td>
&lt;td>&lt;span style="background-color:#5f00af;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#5f00af&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:55m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:55m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>56&lt;/td>
&lt;td>Purple3&lt;/td>
&lt;td>&lt;span style="background-color:#5f00d7;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#5f00d7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:56m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:56m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>57&lt;/td>
&lt;td>BlueViolet&lt;/td>
&lt;td>&lt;span style="background-color:#5f00ff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#5f00ff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:57m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:57m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>58&lt;/td>
&lt;td>Orange4&lt;/td>
&lt;td>&lt;span style="background-color:#5f5f00;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#5f5f00&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:58m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:58m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>59&lt;/td>
&lt;td>Grey37&lt;/td>
&lt;td>&lt;span style="background-color:#5f5f5f;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#5f5f5f&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:59m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:59m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>60&lt;/td>
&lt;td>MediumPurple4&lt;/td>
&lt;td>&lt;span style="background-color:#5f5f87;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#5f5f87&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:60m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:60m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>61&lt;/td>
&lt;td>SlateBlue3&lt;/td>
&lt;td>&lt;span style="background-color:#5f5faf;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#5f5faf&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:61m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:61m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>62&lt;/td>
&lt;td>SlateBlue3&lt;/td>
&lt;td>&lt;span style="background-color:#5f5fd7;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#5f5fd7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:62m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:62m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>63&lt;/td>
&lt;td>RoyalBlue1&lt;/td>
&lt;td>&lt;span style="background-color:#5f5fff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#5f5fff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:63m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:63m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>64&lt;/td>
&lt;td>Chartreuse4&lt;/td>
&lt;td>&lt;span style="background-color:#5f8700;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#5f8700&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:64m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:64m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>65&lt;/td>
&lt;td>DarkSeaGreen4&lt;/td>
&lt;td>&lt;span style="background-color:#5f875f;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#5f875f&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:65m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:65m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>66&lt;/td>
&lt;td>PaleTurquoise4&lt;/td>
&lt;td>&lt;span style="background-color:#5f8787;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#5f8787&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:66m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:66m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>67&lt;/td>
&lt;td>SteelBlue&lt;/td>
&lt;td>&lt;span style="background-color:#5f87af;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#5f87af&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:67m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:67m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>68&lt;/td>
&lt;td>SteelBlue3&lt;/td>
&lt;td>&lt;span style="background-color:#5f87d7;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#5f87d7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:68m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:68m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>69&lt;/td>
&lt;td>CornflowerBlue&lt;/td>
&lt;td>&lt;span style="background-color:#5f87ff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#5f87ff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:69m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:69m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>70&lt;/td>
&lt;td>Chartreuse3&lt;/td>
&lt;td>&lt;span style="background-color:#5faf00;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#5faf00&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:70m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:70m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>71&lt;/td>
&lt;td>DarkSeaGreen4&lt;/td>
&lt;td>&lt;span style="background-color:#5faf5f;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#5faf5f&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:71m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:71m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>72&lt;/td>
&lt;td>CadetBlue&lt;/td>
&lt;td>&lt;span style="background-color:#5faf87;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#5faf87&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:72m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:72m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>73&lt;/td>
&lt;td>CadetBlue&lt;/td>
&lt;td>&lt;span style="background-color:#5fafaf;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#5fafaf&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:73m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:73m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>74&lt;/td>
&lt;td>SkyBlue3&lt;/td>
&lt;td>&lt;span style="background-color:#5fafd7;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#5fafd7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:74m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:74m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>75&lt;/td>
&lt;td>SteelBlue1&lt;/td>
&lt;td>&lt;span style="background-color:#5fafff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#5fafff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:75m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:75m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>76&lt;/td>
&lt;td>Chartreuse3&lt;/td>
&lt;td>&lt;span style="background-color:#5fd700;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#5fd700&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:76m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:76m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>77&lt;/td>
&lt;td>PaleGreen3&lt;/td>
&lt;td>&lt;span style="background-color:#5fd75f;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#5fd75f&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:77m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:77m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>78&lt;/td>
&lt;td>SeaGreen3&lt;/td>
&lt;td>&lt;span style="background-color:#5fd787;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#5fd787&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:78m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:78m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>79&lt;/td>
&lt;td>Aquamarine3&lt;/td>
&lt;td>&lt;span style="background-color:#5fd7af;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#5fd7af&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:79m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:79m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>80&lt;/td>
&lt;td>MediumTurquoise&lt;/td>
&lt;td>&lt;span style="background-color:#5fd7d7;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#5fd7d7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:80m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:80m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>81&lt;/td>
&lt;td>SteelBlue1&lt;/td>
&lt;td>&lt;span style="background-color:#5fd7ff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#5fd7ff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:81m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:81m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>82&lt;/td>
&lt;td>Chartreuse2&lt;/td>
&lt;td>&lt;span style="background-color:#5fff00;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#5fff00&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:82m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:82m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>83&lt;/td>
&lt;td>SeaGreen2&lt;/td>
&lt;td>&lt;span style="background-color:#5fff5f;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#5fff5f&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:83m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:83m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>84&lt;/td>
&lt;td>SeaGreen1&lt;/td>
&lt;td>&lt;span style="background-color:#5fff87;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#5fff87&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:84m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:84m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>85&lt;/td>
&lt;td>SeaGreen1&lt;/td>
&lt;td>&lt;span style="background-color:#5fffaf;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#5fffaf&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:85m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:85m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>86&lt;/td>
&lt;td>Aquamarine1&lt;/td>
&lt;td>&lt;span style="background-color:#5fffd7;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#5fffd7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:86m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:86m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>87&lt;/td>
&lt;td>DarkSlateGray2&lt;/td>
&lt;td>&lt;span style="background-color:#5fffff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#5fffff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:87m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:87m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>88&lt;/td>
&lt;td>DarkRed&lt;/td>
&lt;td>&lt;span style="background-color:#870000;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#870000&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:88m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:88m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>89&lt;/td>
&lt;td>DeepPink4&lt;/td>
&lt;td>&lt;span style="background-color:#87005f;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#87005f&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:89m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:89m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>90&lt;/td>
&lt;td>DarkMagenta&lt;/td>
&lt;td>&lt;span style="background-color:#870087;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#870087&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:90m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:90m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>91&lt;/td>
&lt;td>DarkMagenta&lt;/td>
&lt;td>&lt;span style="background-color:#8700af;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#8700af&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:91m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:91m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>92&lt;/td>
&lt;td>DarkViolet&lt;/td>
&lt;td>&lt;span style="background-color:#8700d7;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#8700d7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:92m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:92m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>93&lt;/td>
&lt;td>Purple&lt;/td>
&lt;td>&lt;span style="background-color:#8700ff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#8700ff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:93m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:93m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>94&lt;/td>
&lt;td>Orange4&lt;/td>
&lt;td>&lt;span style="background-color:#875f00;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#875f00&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:94m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:94m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>95&lt;/td>
&lt;td>LightPink4&lt;/td>
&lt;td>&lt;span style="background-color:#875f5f;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#875f5f&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:95m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:95m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>96&lt;/td>
&lt;td>Plum4&lt;/td>
&lt;td>&lt;span style="background-color:#875f87;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#875f87&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:96m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:96m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>97&lt;/td>
&lt;td>MediumPurple3&lt;/td>
&lt;td>&lt;span style="background-color:#875faf;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#875faf&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:97m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:97m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>98&lt;/td>
&lt;td>MediumPurple3&lt;/td>
&lt;td>&lt;span style="background-color:#875fd7;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#875fd7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:98m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:98m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>99&lt;/td>
&lt;td>SlateBlue1&lt;/td>
&lt;td>&lt;span style="background-color:#875fff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#875fff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:99m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:99m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>100&lt;/td>
&lt;td>Yellow4&lt;/td>
&lt;td>&lt;span style="background-color:#878700;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#878700&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:100m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:100m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>101&lt;/td>
&lt;td>Wheat4&lt;/td>
&lt;td>&lt;span style="background-color:#87875f;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#87875f&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:101m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:101m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>102&lt;/td>
&lt;td>Grey53&lt;/td>
&lt;td>&lt;span style="background-color:#878787;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#878787&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:102m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:102m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>103&lt;/td>
&lt;td>LightSlateGrey&lt;/td>
&lt;td>&lt;span style="background-color:#8787af;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#8787af&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:103m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:103m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>104&lt;/td>
&lt;td>MediumPurple&lt;/td>
&lt;td>&lt;span style="background-color:#8787d7;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#8787d7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:104m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:104m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>105&lt;/td>
&lt;td>LightSlateBlue&lt;/td>
&lt;td>&lt;span style="background-color:#8787ff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#8787ff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:105m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:105m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>106&lt;/td>
&lt;td>Yellow4&lt;/td>
&lt;td>&lt;span style="background-color:#87af00;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#87af00&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:106m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:106m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>107&lt;/td>
&lt;td>DarkOliveGreen3&lt;/td>
&lt;td>&lt;span style="background-color:#87af5f;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#87af5f&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:107m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:107m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>108&lt;/td>
&lt;td>DarkSeaGreen&lt;/td>
&lt;td>&lt;span style="background-color:#87af87;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#87af87&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:108m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:108m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>109&lt;/td>
&lt;td>LightSkyBlue3&lt;/td>
&lt;td>&lt;span style="background-color:#87afaf;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#87afaf&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:109m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:109m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>110&lt;/td>
&lt;td>LightSkyBlue3&lt;/td>
&lt;td>&lt;span style="background-color:#87afd7;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#87afd7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:110m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:110m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>111&lt;/td>
&lt;td>SkyBlue2&lt;/td>
&lt;td>&lt;span style="background-color:#87afff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#87afff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:111m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:111m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>112&lt;/td>
&lt;td>Chartreuse2&lt;/td>
&lt;td>&lt;span style="background-color:#87d700;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#87d700&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:112m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:112m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>113&lt;/td>
&lt;td>DarkOliveGreen3&lt;/td>
&lt;td>&lt;span style="background-color:#87d75f;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#87d75f&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:113m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:113m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>114&lt;/td>
&lt;td>PaleGreen3&lt;/td>
&lt;td>&lt;span style="background-color:#87d787;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#87d787&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:114m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:114m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>115&lt;/td>
&lt;td>DarkSeaGreen3&lt;/td>
&lt;td>&lt;span style="background-color:#87d7af;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#87d7af&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:115m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:115m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>116&lt;/td>
&lt;td>DarkSlateGray3&lt;/td>
&lt;td>&lt;span style="background-color:#87d7d7;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#87d7d7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:116m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:116m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>117&lt;/td>
&lt;td>SkyBlue1&lt;/td>
&lt;td>&lt;span style="background-color:#87d7ff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#87d7ff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:117m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:117m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>118&lt;/td>
&lt;td>Chartreuse1&lt;/td>
&lt;td>&lt;span style="background-color:#87ff00;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#87ff00&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:118m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:118m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>119&lt;/td>
&lt;td>LightGreen&lt;/td>
&lt;td>&lt;span style="background-color:#87ff5f;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#87ff5f&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:119m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:119m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>120&lt;/td>
&lt;td>LightGreen&lt;/td>
&lt;td>&lt;span style="background-color:#87ff87;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#87ff87&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:120m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:120m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>121&lt;/td>
&lt;td>PaleGreen1&lt;/td>
&lt;td>&lt;span style="background-color:#87ffaf;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#87ffaf&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:121m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:121m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>122&lt;/td>
&lt;td>Aquamarine1&lt;/td>
&lt;td>&lt;span style="background-color:#87ffd7;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#87ffd7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:122m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:122m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>123&lt;/td>
&lt;td>DarkSlateGray1&lt;/td>
&lt;td>&lt;span style="background-color:#87ffff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#87ffff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:123m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:123m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>124&lt;/td>
&lt;td>Red3&lt;/td>
&lt;td>&lt;span style="background-color:#af0000;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#af0000&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:124m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:124m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>125&lt;/td>
&lt;td>DeepPink4&lt;/td>
&lt;td>&lt;span style="background-color:#af005f;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#af005f&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:125m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:125m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>126&lt;/td>
&lt;td>MediumVioletRed&lt;/td>
&lt;td>&lt;span style="background-color:#af0087;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#af0087&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:126m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:126m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>127&lt;/td>
&lt;td>Magenta3&lt;/td>
&lt;td>&lt;span style="background-color:#af00af;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#af00af&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:127m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:127m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>128&lt;/td>
&lt;td>DarkViolet&lt;/td>
&lt;td>&lt;span style="background-color:#af00d7;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#af00d7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:128m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:128m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>129&lt;/td>
&lt;td>Purple&lt;/td>
&lt;td>&lt;span style="background-color:#af00ff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#af00ff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:129m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:129m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>130&lt;/td>
&lt;td>DarkOrange3&lt;/td>
&lt;td>&lt;span style="background-color:#af5f00;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#af5f00&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:130m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:130m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>131&lt;/td>
&lt;td>IndianRed&lt;/td>
&lt;td>&lt;span style="background-color:#af5f5f;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#af5f5f&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:131m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:131m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>132&lt;/td>
&lt;td>HotPink3&lt;/td>
&lt;td>&lt;span style="background-color:#af5f87;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#af5f87&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:132m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:132m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>133&lt;/td>
&lt;td>MediumOrchid3&lt;/td>
&lt;td>&lt;span style="background-color:#af5faf;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#af5faf&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:133m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:133m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>134&lt;/td>
&lt;td>MediumOrchid&lt;/td>
&lt;td>&lt;span style="background-color:#af5fd7;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#af5fd7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:134m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:134m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>135&lt;/td>
&lt;td>MediumPurple2&lt;/td>
&lt;td>&lt;span style="background-color:#af5fff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#af5fff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:135m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:135m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>136&lt;/td>
&lt;td>DarkGoldenrod&lt;/td>
&lt;td>&lt;span style="background-color:#af8700;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#af8700&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:136m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:136m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>137&lt;/td>
&lt;td>LightSalmon3&lt;/td>
&lt;td>&lt;span style="background-color:#af875f;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#af875f&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:137m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:137m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>138&lt;/td>
&lt;td>RosyBrown&lt;/td>
&lt;td>&lt;span style="background-color:#af8787;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#af8787&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:138m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:138m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>139&lt;/td>
&lt;td>Grey63&lt;/td>
&lt;td>&lt;span style="background-color:#af87af;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#af87af&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:139m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:139m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>140&lt;/td>
&lt;td>MediumPurple2&lt;/td>
&lt;td>&lt;span style="background-color:#af87d7;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#af87d7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:140m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:140m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>141&lt;/td>
&lt;td>MediumPurple1&lt;/td>
&lt;td>&lt;span style="background-color:#af87ff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#af87ff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:141m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:141m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>142&lt;/td>
&lt;td>Gold3&lt;/td>
&lt;td>&lt;span style="background-color:#afaf00;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#afaf00&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:142m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:142m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>143&lt;/td>
&lt;td>DarkKhaki&lt;/td>
&lt;td>&lt;span style="background-color:#afaf5f;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#afaf5f&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:143m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:143m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>144&lt;/td>
&lt;td>NavajoWhite3&lt;/td>
&lt;td>&lt;span style="background-color:#afaf87;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#afaf87&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:144m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:144m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>145&lt;/td>
&lt;td>Grey69&lt;/td>
&lt;td>&lt;span style="background-color:#afafaf;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#afafaf&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:145m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:145m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>146&lt;/td>
&lt;td>LightSteelBlue3&lt;/td>
&lt;td>&lt;span style="background-color:#afafd7;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#afafd7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:146m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:146m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>147&lt;/td>
&lt;td>LightSteelBlue&lt;/td>
&lt;td>&lt;span style="background-color:#afafff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#afafff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:147m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:147m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>148&lt;/td>
&lt;td>Yellow3&lt;/td>
&lt;td>&lt;span style="background-color:#afd700;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#afd700&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:148m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:148m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>149&lt;/td>
&lt;td>DarkOliveGreen3&lt;/td>
&lt;td>&lt;span style="background-color:#afd75f;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#afd75f&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:149m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:149m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>150&lt;/td>
&lt;td>DarkSeaGreen3&lt;/td>
&lt;td>&lt;span style="background-color:#afd787;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#afd787&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:150m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:150m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>151&lt;/td>
&lt;td>DarkSeaGreen2&lt;/td>
&lt;td>&lt;span style="background-color:#afd7af;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#afd7af&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:151m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:151m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>152&lt;/td>
&lt;td>LightCyan3&lt;/td>
&lt;td>&lt;span style="background-color:#afd7d7;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#afd7d7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:152m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:152m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>153&lt;/td>
&lt;td>LightSkyBlue1&lt;/td>
&lt;td>&lt;span style="background-color:#afd7ff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#afd7ff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:153m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:153m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>154&lt;/td>
&lt;td>GreenYellow&lt;/td>
&lt;td>&lt;span style="background-color:#afff00;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#afff00&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:154m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:154m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>155&lt;/td>
&lt;td>DarkOliveGreen2&lt;/td>
&lt;td>&lt;span style="background-color:#afff5f;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#afff5f&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:155m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:155m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>156&lt;/td>
&lt;td>PaleGreen1&lt;/td>
&lt;td>&lt;span style="background-color:#afff87;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#afff87&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:156m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:156m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>157&lt;/td>
&lt;td>DarkSeaGreen2&lt;/td>
&lt;td>&lt;span style="background-color:#afffaf;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#afffaf&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:157m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:157m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>158&lt;/td>
&lt;td>DarkSeaGreen1&lt;/td>
&lt;td>&lt;span style="background-color:#afffd7;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#afffd7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:158m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:158m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>159&lt;/td>
&lt;td>PaleTurquoise1&lt;/td>
&lt;td>&lt;span style="background-color:#afffff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#afffff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:159m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:159m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>160&lt;/td>
&lt;td>Red3&lt;/td>
&lt;td>&lt;span style="background-color:#d70000;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d70000&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:160m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:160m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>161&lt;/td>
&lt;td>DeepPink3&lt;/td>
&lt;td>&lt;span style="background-color:#d7005f;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d7005f&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:161m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:161m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>162&lt;/td>
&lt;td>DeepPink3&lt;/td>
&lt;td>&lt;span style="background-color:#d70087;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d70087&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:162m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:162m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>163&lt;/td>
&lt;td>Magenta3&lt;/td>
&lt;td>&lt;span style="background-color:#d700af;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d700af&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:163m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:163m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>164&lt;/td>
&lt;td>Magenta3&lt;/td>
&lt;td>&lt;span style="background-color:#d700d7;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d700d7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:164m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:164m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>165&lt;/td>
&lt;td>Magenta2&lt;/td>
&lt;td>&lt;span style="background-color:#d700ff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d700ff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:165m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:165m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>166&lt;/td>
&lt;td>DarkOrange3&lt;/td>
&lt;td>&lt;span style="background-color:#d75f00;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d75f00&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:166m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:166m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>167&lt;/td>
&lt;td>IndianRed&lt;/td>
&lt;td>&lt;span style="background-color:#d75f5f;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d75f5f&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:167m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:167m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>168&lt;/td>
&lt;td>HotPink3&lt;/td>
&lt;td>&lt;span style="background-color:#d75f87;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d75f87&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:168m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:168m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>169&lt;/td>
&lt;td>HotPink2&lt;/td>
&lt;td>&lt;span style="background-color:#d75faf;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d75faf&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:169m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:169m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>170&lt;/td>
&lt;td>Orchid&lt;/td>
&lt;td>&lt;span style="background-color:#d75fd7;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d75fd7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:170m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:170m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>171&lt;/td>
&lt;td>MediumOrchid1&lt;/td>
&lt;td>&lt;span style="background-color:#d75fff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d75fff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:171m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:171m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>172&lt;/td>
&lt;td>Orange3&lt;/td>
&lt;td>&lt;span style="background-color:#d78700;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d78700&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:172m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:172m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>173&lt;/td>
&lt;td>LightSalmon3&lt;/td>
&lt;td>&lt;span style="background-color:#d7875f;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d7875f&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:173m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:173m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>174&lt;/td>
&lt;td>LightPink3&lt;/td>
&lt;td>&lt;span style="background-color:#d78787;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d78787&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:174m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:174m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>175&lt;/td>
&lt;td>Pink3&lt;/td>
&lt;td>&lt;span style="background-color:#d787af;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d787af&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:175m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:175m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>176&lt;/td>
&lt;td>Plum3&lt;/td>
&lt;td>&lt;span style="background-color:#d787d7;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d787d7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:176m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:176m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>177&lt;/td>
&lt;td>Violet&lt;/td>
&lt;td>&lt;span style="background-color:#d787ff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d787ff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:177m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:177m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>178&lt;/td>
&lt;td>Gold3&lt;/td>
&lt;td>&lt;span style="background-color:#d7af00;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d7af00&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:178m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:178m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>179&lt;/td>
&lt;td>LightGoldenrod3&lt;/td>
&lt;td>&lt;span style="background-color:#d7af5f;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d7af5f&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:179m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:179m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>180&lt;/td>
&lt;td>Tan&lt;/td>
&lt;td>&lt;span style="background-color:#d7af87;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d7af87&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:180m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:180m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>181&lt;/td>
&lt;td>MistyRose3&lt;/td>
&lt;td>&lt;span style="background-color:#d7afaf;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d7afaf&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:181m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:181m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>182&lt;/td>
&lt;td>Thistle3&lt;/td>
&lt;td>&lt;span style="background-color:#d7afd7;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d7afd7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:182m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:182m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>183&lt;/td>
&lt;td>Plum2&lt;/td>
&lt;td>&lt;span style="background-color:#d7afff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d7afff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:183m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:183m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>184&lt;/td>
&lt;td>Yellow3&lt;/td>
&lt;td>&lt;span style="background-color:#d7d700;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d7d700&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:184m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:184m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>185&lt;/td>
&lt;td>Khaki3&lt;/td>
&lt;td>&lt;span style="background-color:#d7d75f;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d7d75f&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:185m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:185m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>186&lt;/td>
&lt;td>LightGoldenrod2&lt;/td>
&lt;td>&lt;span style="background-color:#d7d787;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d7d787&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:186m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:186m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>187&lt;/td>
&lt;td>LightYellow3&lt;/td>
&lt;td>&lt;span style="background-color:#d7d7af;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d7d7af&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:187m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:187m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>188&lt;/td>
&lt;td>Grey84&lt;/td>
&lt;td>&lt;span style="background-color:#d7d7d7;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d7d7d7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:188m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:188m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>189&lt;/td>
&lt;td>LightSteelBlue1&lt;/td>
&lt;td>&lt;span style="background-color:#d7d7ff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d7d7ff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:189m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:189m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>190&lt;/td>
&lt;td>Yellow2&lt;/td>
&lt;td>&lt;span style="background-color:#d7ff00;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d7ff00&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:190m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:190m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>191&lt;/td>
&lt;td>DarkOliveGreen1&lt;/td>
&lt;td>&lt;span style="background-color:#d7ff5f;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d7ff5f&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:191m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:191m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>192&lt;/td>
&lt;td>DarkOliveGreen1&lt;/td>
&lt;td>&lt;span style="background-color:#d7ff87;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d7ff87&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:192m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:192m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>193&lt;/td>
&lt;td>DarkSeaGreen1&lt;/td>
&lt;td>&lt;span style="background-color:#d7ffaf;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d7ffaf&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:193m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:193m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>194&lt;/td>
&lt;td>Honeydew2&lt;/td>
&lt;td>&lt;span style="background-color:#d7ffd7;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d7ffd7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:194m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:194m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>195&lt;/td>
&lt;td>LightCyan1&lt;/td>
&lt;td>&lt;span style="background-color:#d7ffff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d7ffff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:195m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:195m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>196&lt;/td>
&lt;td>Red1&lt;/td>
&lt;td>&lt;span style="background-color:#ff0000;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ff0000&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:196m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:196m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>197&lt;/td>
&lt;td>DeepPink2&lt;/td>
&lt;td>&lt;span style="background-color:#ff005f;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ff005f&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:197m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:197m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>198&lt;/td>
&lt;td>DeepPink1&lt;/td>
&lt;td>&lt;span style="background-color:#ff0087;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ff0087&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:198m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:198m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>199&lt;/td>
&lt;td>DeepPink1&lt;/td>
&lt;td>&lt;span style="background-color:#ff00af;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ff00af&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:199m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:199m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>200&lt;/td>
&lt;td>Magenta2&lt;/td>
&lt;td>&lt;span style="background-color:#ff00d7;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ff00d7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:200m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:200m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>201&lt;/td>
&lt;td>Magenta1&lt;/td>
&lt;td>&lt;span style="background-color:#ff00ff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ff00ff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:201m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:201m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>202&lt;/td>
&lt;td>OrangeRed1&lt;/td>
&lt;td>&lt;span style="background-color:#ff5f00;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ff5f00&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:202m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:202m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>203&lt;/td>
&lt;td>IndianRed1&lt;/td>
&lt;td>&lt;span style="background-color:#ff5f5f;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ff5f5f&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:203m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:203m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>204&lt;/td>
&lt;td>IndianRed1&lt;/td>
&lt;td>&lt;span style="background-color:#ff5f87;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ff5f87&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:204m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:204m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>205&lt;/td>
&lt;td>HotPink&lt;/td>
&lt;td>&lt;span style="background-color:#ff5faf;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ff5faf&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:205m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:205m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>206&lt;/td>
&lt;td>HotPink&lt;/td>
&lt;td>&lt;span style="background-color:#ff5fd7;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ff5fd7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:206m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:206m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>207&lt;/td>
&lt;td>MediumOrchid1&lt;/td>
&lt;td>&lt;span style="background-color:#ff5fff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ff5fff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:207m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:207m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>208&lt;/td>
&lt;td>DarkOrange&lt;/td>
&lt;td>&lt;span style="background-color:#ff8700;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ff8700&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:208m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:208m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>209&lt;/td>
&lt;td>Salmon1&lt;/td>
&lt;td>&lt;span style="background-color:#ff875f;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ff875f&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:209m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:209m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>210&lt;/td>
&lt;td>LightCoral&lt;/td>
&lt;td>&lt;span style="background-color:#ff8787;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ff8787&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:210m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:210m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>211&lt;/td>
&lt;td>PaleVioletRed1&lt;/td>
&lt;td>&lt;span style="background-color:#ff87af;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ff87af&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:211m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:211m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>212&lt;/td>
&lt;td>Orchid2&lt;/td>
&lt;td>&lt;span style="background-color:#ff87d7;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ff87d7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:212m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:212m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>213&lt;/td>
&lt;td>Orchid1&lt;/td>
&lt;td>&lt;span style="background-color:#ff87ff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ff87ff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:213m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:213m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>214&lt;/td>
&lt;td>Orange1&lt;/td>
&lt;td>&lt;span style="background-color:#ffaf00;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ffaf00&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:214m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:214m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>215&lt;/td>
&lt;td>SandyBrown&lt;/td>
&lt;td>&lt;span style="background-color:#ffaf5f;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ffaf5f&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:215m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:215m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>216&lt;/td>
&lt;td>LightSalmon1&lt;/td>
&lt;td>&lt;span style="background-color:#ffaf87;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ffaf87&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:216m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:216m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>217&lt;/td>
&lt;td>LightPink1&lt;/td>
&lt;td>&lt;span style="background-color:#ffafaf;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ffafaf&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:217m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:217m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>218&lt;/td>
&lt;td>Pink1&lt;/td>
&lt;td>&lt;span style="background-color:#ffafd7;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ffafd7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:218m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:218m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>219&lt;/td>
&lt;td>Plum1&lt;/td>
&lt;td>&lt;span style="background-color:#ffafff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ffafff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:219m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:219m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>220&lt;/td>
&lt;td>Gold1&lt;/td>
&lt;td>&lt;span style="background-color:#ffd700;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ffd700&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:220m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:220m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>221&lt;/td>
&lt;td>LightGoldenrod2&lt;/td>
&lt;td>&lt;span style="background-color:#ffd75f;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ffd75f&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:221m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:221m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>222&lt;/td>
&lt;td>LightGoldenrod2&lt;/td>
&lt;td>&lt;span style="background-color:#ffd787;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ffd787&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:222m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:222m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>223&lt;/td>
&lt;td>NavajoWhite1&lt;/td>
&lt;td>&lt;span style="background-color:#ffd7af;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ffd7af&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:223m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:223m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>224&lt;/td>
&lt;td>MistyRose1&lt;/td>
&lt;td>&lt;span style="background-color:#ffd7d7;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ffd7d7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:224m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:224m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>225&lt;/td>
&lt;td>Thistle1&lt;/td>
&lt;td>&lt;span style="background-color:#ffd7ff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ffd7ff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:225m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:225m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>226&lt;/td>
&lt;td>Yellow1&lt;/td>
&lt;td>&lt;span style="background-color:#ffff00;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ffff00&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:226m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:226m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>227&lt;/td>
&lt;td>LightGoldenrod1&lt;/td>
&lt;td>&lt;span style="background-color:#ffff5f;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ffff5f&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:227m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:227m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>228&lt;/td>
&lt;td>Khaki1&lt;/td>
&lt;td>&lt;span style="background-color:#ffff87;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ffff87&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:228m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:228m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>229&lt;/td>
&lt;td>Wheat1&lt;/td>
&lt;td>&lt;span style="background-color:#ffffaf;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ffffaf&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:229m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:229m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>230&lt;/td>
&lt;td>Cornsilk1&lt;/td>
&lt;td>&lt;span style="background-color:#ffffd7;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ffffd7&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:230m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:230m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>231&lt;/td>
&lt;td>Grey100&lt;/td>
&lt;td>&lt;span style="background-color:#ffffff;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#ffffff&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:231m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:231m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>232&lt;/td>
&lt;td>Grey3&lt;/td>
&lt;td>&lt;span style="background-color:#080808;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#080808&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:232m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:232m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>233&lt;/td>
&lt;td>Grey7&lt;/td>
&lt;td>&lt;span style="background-color:#121212;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#121212&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:233m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:233m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>234&lt;/td>
&lt;td>Grey11&lt;/td>
&lt;td>&lt;span style="background-color:#1c1c1c;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#1c1c1c&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:234m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:234m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>235&lt;/td>
&lt;td>Grey15&lt;/td>
&lt;td>&lt;span style="background-color:#262626;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#262626&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:235m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:235m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>236&lt;/td>
&lt;td>Grey19&lt;/td>
&lt;td>&lt;span style="background-color:#303030;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#303030&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:236m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:236m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>237&lt;/td>
&lt;td>Grey23&lt;/td>
&lt;td>&lt;span style="background-color:#3a3a3a;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#3a3a3a&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:237m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:237m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>238&lt;/td>
&lt;td>Grey27&lt;/td>
&lt;td>&lt;span style="background-color:#444444;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#444444&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:238m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:238m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>239&lt;/td>
&lt;td>Grey30&lt;/td>
&lt;td>&lt;span style="background-color:#4e4e4e;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#4e4e4e&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:239m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:239m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>240&lt;/td>
&lt;td>Grey35&lt;/td>
&lt;td>&lt;span style="background-color:#585858;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#585858&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:240m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:240m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>241&lt;/td>
&lt;td>Grey39&lt;/td>
&lt;td>&lt;span style="background-color:#626262;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#626262&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:241m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:241m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>242&lt;/td>
&lt;td>Grey42&lt;/td>
&lt;td>&lt;span style="background-color:#6c6c6c;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#6c6c6c&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:242m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:242m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>243&lt;/td>
&lt;td>Grey46&lt;/td>
&lt;td>&lt;span style="background-color:#767676;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#767676&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:243m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:243m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>244&lt;/td>
&lt;td>Grey50&lt;/td>
&lt;td>&lt;span style="background-color:#808080;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#808080&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:244m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:244m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>245&lt;/td>
&lt;td>Grey54&lt;/td>
&lt;td>&lt;span style="background-color:#8a8a8a;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#8a8a8a&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:245m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:245m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>246&lt;/td>
&lt;td>Grey58&lt;/td>
&lt;td>&lt;span style="background-color:#949494;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#949494&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:246m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:246m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>247&lt;/td>
&lt;td>Grey62&lt;/td>
&lt;td>&lt;span style="background-color:#9e9e9e;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#9e9e9e&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:247m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:247m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>248&lt;/td>
&lt;td>Grey66&lt;/td>
&lt;td>&lt;span style="background-color:#a8a8a8;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#a8a8a8&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:248m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:248m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>249&lt;/td>
&lt;td>Grey70&lt;/td>
&lt;td>&lt;span style="background-color:#b2b2b2;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#b2b2b2&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:249m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:249m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>250&lt;/td>
&lt;td>Grey74&lt;/td>
&lt;td>&lt;span style="background-color:#bcbcbc;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#bcbcbc&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:250m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:250m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>251&lt;/td>
&lt;td>Grey78&lt;/td>
&lt;td>&lt;span style="background-color:#c6c6c6;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#c6c6c6&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:251m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:251m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>252&lt;/td>
&lt;td>Grey82&lt;/td>
&lt;td>&lt;span style="background-color:#d0d0d0;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#d0d0d0&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:252m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:252m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>253&lt;/td>
&lt;td>Grey85&lt;/td>
&lt;td>&lt;span style="background-color:#dadada;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#dadada&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:253m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:253m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>254&lt;/td>
&lt;td>Grey89&lt;/td>
&lt;td>&lt;span style="background-color:#e4e4e4;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#e4e4e4&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:254m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:254m&lt;/code>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>255&lt;/td>
&lt;td>Grey93&lt;/td>
&lt;td>&lt;span style="background-color:#eeeeee;padding:0 26px 0 26px" />&lt;/td>
&lt;td>&lt;code>#eeeeee&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[38:5:255m&lt;/code>&lt;/td>
&lt;td>&lt;code>\x1b[48:5:255m&lt;/code>&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/div>
&lt;h2 id="true-color">True Color&lt;/h2>
&lt;div class="sw-lg-table-container dark-scrollbar">
&lt;table class="sw-table" id="">
&lt;thead>
&lt;tr>
&lt;th>&lt;/th>
&lt;th>Escape Code&lt;/th>
&lt;th>Example&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>foreground color&lt;/td>
&lt;td>&lt;code>\x1b[38;2;${red};${green};${blue}m&lt;/code>&lt;/td>
&lt;td>&lt;span style="color:#ff0000;padding:0 26px 0 26px"> &lt;code>\x1b[38;2;255;0;0m&lt;/code> &lt;/span>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>background color&lt;/td>
&lt;td>&lt;code>\x1b[48;2;${red};${green};${blue}m&lt;/code>&lt;/td>
&lt;td>&lt;span style="background-color:#ff0000;padding:0 26px 0 26px"> &lt;code>\x1b[48;2;255;0;0m&lt;/code> &lt;/span>&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/div></description></item><item><title>Cheatsheets: Tmux Cheatsheet</title><link>https://devmemo.gitlab.io/cheatsheets/tmux/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://devmemo.gitlab.io/cheatsheets/tmux/</guid><description>
&lt;h2 id="commands">Commands&lt;/h2>
&lt;h3 id="session">Session&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Start a new tmux session.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tmux
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Start a new tmux session with name.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tmux new -s &amp;lt;session-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># List all sessions.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tmux ls
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Attach to the last session.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tmux attach
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Attach to a session with name.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tmux attach -t &amp;lt;session-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Kill a session.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tmux kill-session -t &amp;lt;session-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Kill sessions other than the current one.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tmux kill-session -a
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Kill sessions other than the named one.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tmux kill-session -a -t &amp;lt;session-name&amp;gt;
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="window">Window&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create a new window and switch to it.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tmux new-window
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Create a a new window with name, but do not swith to it.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tmux new-window -t -n &amp;lt;window-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Kill the current window.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tmux kill-window
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Kill the target window.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tmux kill-window -t &amp;lt;window-name&amp;gt;
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Send keys to the target window. (End with C-j for enter)&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tmux send-keys -t &amp;lt;window-name&amp;gt; &amp;lt;command&amp;gt; C-j
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="info">Info&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Show tmux session information.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tmux info
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="config">Config&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Reload config.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tmux source-file ~/.tmux.conf
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#75715e"># Show config.&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>tmux show-options -g
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="hotkeys">HotKeys&lt;/h2>
&lt;h3 id="session-management">Session Management&lt;/h3>
&lt;div class="sw-table-container dark-scrollbar">
&lt;table class="sw-headless-two-col-table" id="">
&lt;thead>
&lt;tr>
&lt;th>&lt;/th>
&lt;th style="text-align:right">&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>&lt;code>C-b d&lt;/code>&lt;/td>
&lt;td style="text-align:right">Dettach from session&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-b s&lt;/code>&lt;/td>
&lt;td style="text-align:right">Show all sessions&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-b $&lt;/code>&lt;/td>
&lt;td style="text-align:right">Rename sessions&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-b (&lt;/code>&lt;/td>
&lt;td style="text-align:right">Go to the previous session&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-b )&lt;/code>&lt;/td>
&lt;td style="text-align:right">Go to the next session&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/div>
&lt;h3 id="window-management">Window Management&lt;/h3>
&lt;div class="sw-table-container dark-scrollbar">
&lt;table class="sw-headless-two-col-table" id="">
&lt;thead>
&lt;tr>
&lt;th>&lt;/th>
&lt;th style="text-align:right">&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>&lt;code>C-b c&lt;/code>&lt;/td>
&lt;td style="text-align:right">Create a new window&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-b p&lt;/code>&lt;/td>
&lt;td style="text-align:right">Go to the previous window&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-b n&lt;/code>&lt;/td>
&lt;td style="text-align:right">Go to the next window&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-b ,&lt;/code>&lt;/td>
&lt;td style="text-align:right">Rename window&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-b &amp;amp;&lt;/code>&lt;/td>
&lt;td style="text-align:right">Close window&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-b w&lt;/code>&lt;/td>
&lt;td style="text-align:right">List window&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-b f&lt;/code>&lt;/td>
&lt;td style="text-align:right">Find window&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-b l&lt;/code>&lt;/td>
&lt;td style="text-align:right">Last window&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-b .&lt;/code>&lt;/td>
&lt;td style="text-align:right">Move window&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-b 0...9&lt;/code>&lt;/td>
&lt;td style="text-align:right">Goto # window&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/div>
&lt;h3 id="pane-management">Pane Management&lt;/h3>
&lt;div class="sw-table-container dark-scrollbar">
&lt;table class="sw-headless-two-col-table" id="">
&lt;thead>
&lt;tr>
&lt;th>&lt;/th>
&lt;th style="text-align:right">&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>&lt;code>C-b &amp;quot;&lt;/code>&lt;/td>
&lt;td style="text-align:right">Split horizontally&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-b %&lt;/code>&lt;/td>
&lt;td style="text-align:right">Split vertically&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-b !&lt;/code>&lt;/td>
&lt;td style="text-align:right">Convert pane to window&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-b x&lt;/code>&lt;/td>
&lt;td style="text-align:right">Kill pane&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-b &amp;lt;arrow&amp;gt;&lt;/code>&lt;/td>
&lt;td style="text-align:right">Switch panes&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-b C-&amp;lt;arrow&amp;gt;&lt;/code>&lt;/td>
&lt;td style="text-align:right">Adjust pane size&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-b &amp;lt;space&amp;gt;&lt;/code>&lt;/td>
&lt;td style="text-align:right">Toggle pane layout&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-b {/}&lt;/code>&lt;/td>
&lt;td style="text-align:right">Move to Left/Right&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-b o&lt;/code>&lt;/td>
&lt;td style="text-align:right">Goto next panes&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-b z&lt;/code>&lt;/td>
&lt;td style="text-align:right">toggle full-screen&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-b ;&lt;/code>&lt;/td>
&lt;td style="text-align:right">Toggle Last pane&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-b q&lt;/code>&lt;/td>
&lt;td style="text-align:right">Show numbers&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;code>C-b q 0...9&lt;/code>&lt;/td>
&lt;td style="text-align:right">Goto # pane&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;/div></description></item></channel></rss>