<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Linux Tools on wangzf</title>
    <link>https://wangzhefeng.com/tool/linux/</link>
    <description>Recent content in Linux Tools on wangzf</description>
    <generator>Hugo</generator>
    <language>zh-cn</language>
    <lastBuildDate>Sat, 07 May 2022 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://wangzhefeng.com/tool/linux/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Shell</title>
      <link>https://wangzhefeng.com/tool/linux/shell/</link>
      <pubDate>Sat, 07 May 2022 00:00:00 +0000</pubDate>
      <guid>https://wangzhefeng.com/tool/linux/shell/</guid>
      <description>&lt;style&gt;&#xA;details {&#xA;    border: 1px solid #aaa;&#xA;    border-radius: 4px;&#xA;    padding: .5em .5em 0;&#xA;}&#xA;summary {&#xA;    font-weight: bold;&#xA;    margin: -.5em -.5em 0;&#xA;    padding: .5em;&#xA;}&#xA;details[open] {&#xA;    padding: .5em;&#xA;}&#xA;details[open] summary {&#xA;    border-bottom: 1px solid #aaa;&#xA;    margin-bottom: .5em;&#xA;}&#xA;img {&#xA;    pointer-events: none;&#xA;}&#xA;&lt;/style&gt;&#xA;&lt;details&gt;&lt;summary&gt;目录&lt;/summary&gt;&lt;p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#shell-%E7%AE%80%E4%BB%8B&#34;&gt;Shell 简介&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E6%90%AD%E5%BB%BA%E8%BF%90%E8%A1%8C%E7%8E%AF%E5%A2%83&#34;&gt;搭建运行环境&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E6%90%AD%E5%BB%BAbash%E8%BF%90%E8%A1%8C%E7%8E%AF%E5%A2%83&#34;&gt;搭建Bash运行环境&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E8%BF%90%E8%A1%8Cshell%E8%84%9A%E6%9C%AC&#34;&gt;运行Shell脚本&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#shell-%E5%9F%BA%E6%9C%AC%E8%AF%AD%E6%B3%95&#34;&gt;Shell 基本语法&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#shell-%E7%9A%84-helloworld-%E7%A8%8B%E5%BA%8F&#34;&gt;Shell 的 Hello，World 程序&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#shell-%E5%8F%98%E9%87%8F&#34;&gt;Shell 变量&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#shell-%E5%AD%97%E7%AC%A6%E4%B8%B2&#34;&gt;Shell 字符串&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E5%AD%97%E7%AC%A6%E4%B8%B2%E6%93%8D%E4%BD%9C&#34;&gt;字符串操作&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#shell-%E6%B3%A8%E9%87%8A&#34;&gt;Shell 注释&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#shell%E4%BC%A0%E9%80%92%E5%8F%82%E6%95%B0&#34;&gt;Shell传递参数&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#shell-%E6%95%B0%E7%BB%84&#34;&gt;Shell 数组&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#shell%E8%BF%90%E7%AE%97%E7%AC%A6&#34;&gt;Shell运算符&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#shell-%E5%91%BD%E4%BB%A4%E4%B9%8B-echoprintftest&#34;&gt;Shell 命令之 echo，printf，test&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#echo&#34;&gt;echo&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#printf&#34;&gt;printf&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#test&#34;&gt;test&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E6%95%B0%E5%80%BC%E6%B5%8B%E8%AF%95&#34;&gt;数值测试&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E5%AD%97%E7%AC%A6%E6%B5%8B%E8%AF%95&#34;&gt;字符测试&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E6%96%87%E4%BB%B6%E6%B5%8B%E8%AF%95&#34;&gt;文件测试&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E9%80%BB%E8%BE%91%E6%93%8D%E4%BD%9C%E7%AC%A6&#34;&gt;逻辑操作符&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#shell-%E6%B5%81%E7%A8%8B%E6%8E%A7%E5%88%B6&#34;&gt;Shell 流程控制&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#ifelse&#34;&gt;if&amp;hellip;else&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#case-%E8%AF%AD%E5%8F%A5&#34;&gt;case 语句&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#for%E5%BE%AA%E7%8E%AF&#34;&gt;for循环&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#while-%E8%AF%AD%E5%8F%A5&#34;&gt;while 语句&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#until-%E5%BE%AA%E7%8E%AF&#34;&gt;until 循环&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E8%B7%B3%E5%87%BA%E5%BE%AA%E7%8E%AF&#34;&gt;跳出循环&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#break&#34;&gt;break&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#continue&#34;&gt;continue&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#shell-%E5%87%BD%E6%95%B0&#34;&gt;Shell 函数&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#shell-%E8%BE%93%E5%85%A5%E8%BE%93%E5%87%BA%E9%87%8D%E5%AE%9A%E5%90%91&#34;&gt;Shell 输入输出重定向&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E8%BE%93%E5%87%BA%E9%87%8D%E5%AE%9A%E5%90%91&#34;&gt;输出重定向&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E8%BE%93%E5%85%A5%E9%87%8D%E5%AE%9A%E5%90%91&#34;&gt;输入重定向&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#here-document&#34;&gt;Here Document&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#devnull-%E6%96%87%E4%BB%B6&#34;&gt;/dev/null 文件&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#shell%E6%96%87%E4%BB%B6%E5%8C%85%E5%90%AB&#34;&gt;Shell文件包含&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#shell-%E7%A8%8B%E5%BA%8F%E8%AE%BE%E8%AE%A1%E8%BF%87%E7%A8%8B&#34;&gt;Shell 程序设计过程&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#shell-%E6%95%B0%E5%80%BC%E8%BF%90%E7%AE%97&#34;&gt;Shell 数值运算&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E6%95%B4%E6%95%B0%E8%BF%90%E7%AE%97&#34;&gt;整数运算&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#shell-%E5%B8%83%E5%B0%94%E8%BF%90%E7%AE%97&#34;&gt;Shell 布尔运算&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E5%B8%B8%E8%A7%84%E7%9A%84%E5%B8%83%E5%B0%94%E8%BF%90%E7%AE%97&#34;&gt;常规的布尔运算&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E5%9C%A8-shell-%E4%B8%8B%E8%BF%9B%E8%A1%8C%E9%80%BB%E8%BE%91%E8%BF%90%E7%AE%97&#34;&gt;在 Shell 下进行逻辑运算&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E6%96%87%E4%BB%B6%E6%93%8D%E4%BD%9C&#34;&gt;文件操作&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E6%96%87%E4%BB%B6%E7%9A%84%E5%90%84%E7%A7%8D%E5%B1%9E%E6%80%A7&#34;&gt;文件的各种属性&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E6%96%87%E4%BB%B6%E7%B1%BB%E5%9E%8B&#34;&gt;文件类型&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E6%96%87%E4%BB%B6%E5%B1%9E%E4%B8%BB&#34;&gt;文件属主&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E6%96%87%E4%BB%B6%E6%9D%83%E9%99%90&#34;&gt;文件权限&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E6%96%87%E4%BB%B6%E5%A4%A7%E5%B0%8F&#34;&gt;文件大小&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E6%96%87%E4%BB%B6%E8%AE%BF%E9%97%AE%E6%9B%B4%E6%96%B0%E4%BF%AE%E6%94%B9%E6%97%B6%E9%97%B4&#34;&gt;文件访问、更新、修改时间&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E6%96%87%E4%BB%B6%E5%90%8D&#34;&gt;文件名&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E6%96%87%E4%BB%B6%E7%9A%84%E5%9F%BA%E6%9C%AC%E6%93%8D%E4%BD%9C&#34;&gt;文件的基本操作&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E5%88%9B%E5%BB%BA%E6%96%87%E4%BB%B6&#34;&gt;创建文件&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E5%88%A0%E9%99%A4%E6%96%87%E4%BB%B6&#34;&gt;删除文件&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E5%A4%8D%E5%88%B6%E6%96%87%E4%BB%B6&#34;&gt;复制文件&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#shell-%E7%A8%8B%E5%BA%8F%E8%B0%83%E8%AF%95%E6%96%B9%E6%B3%95&#34;&gt;Shell 程序调试方法&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E7%94%A8%E6%88%B7%E7%AE%A1%E7%90%86&#34;&gt;用户管理&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#linux-%E7%94%A8%E6%88%B7%E8%B4%A6%E5%8F%B7&#34;&gt;Linux 用户账号&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E6%B7%BB%E5%8A%A0%E7%94%A8%E6%88%B7&#34;&gt;添加用户&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E5%88%A0%E9%99%A4%E7%94%A8%E6%88%B7&#34;&gt;删除用户&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E4%BF%AE%E6%94%B9%E7%94%A8%E6%88%B7&#34;&gt;修改用户&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E7%A6%81%E7%94%A8%E7%94%A8%E6%88%B7&#34;&gt;禁用用户&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E7%94%A8%E6%88%B7%E5%8F%A3%E4%BB%A4&#34;&gt;用户口令&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E8%AE%BE%E7%BD%AE%E5%8F%A3%E4%BB%A4&#34;&gt;设置口令&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E5%88%A0%E9%99%A4%E5%8F%A3%E4%BB%A4&#34;&gt;删除口令&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E4%BF%AE%E6%94%B9%E5%8F%A3%E4%BB%A4&#34;&gt;修改口令&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E7%A6%81%E7%94%A8%E5%8F%A3%E4%BB%A4&#34;&gt;禁用口令&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#mac-%E7%94%A8%E6%88%B7%E7%94%A8%E6%88%B7%E7%BB%84%E6%93%8D%E4%BD%9C&#34;&gt;Mac 用户、用户组操作&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Git</title>
      <link>https://wangzhefeng.com/tool/linux/git/</link>
      <pubDate>Sat, 20 Nov 2021 00:00:00 +0000</pubDate>
      <guid>https://wangzhefeng.com/tool/linux/git/</guid>
      <description>&lt;style&gt;&#xA;details {&#xA;    border: 1px solid #aaa;&#xA;    border-radius: 4px;&#xA;    padding: .5em .5em 0;&#xA;}&#xA;summary {&#xA;    font-weight: bold;&#xA;    margin: -.5em -.5em 0;&#xA;    padding: .5em;&#xA;}&#xA;details[open] {&#xA;    padding: .5em;&#xA;}&#xA;details[open] summary {&#xA;    border-bottom: 1px solid #aaa;&#xA;    margin-bottom: .5em;&#xA;}&#xA;img {&#xA;    pointer-events: none;&#xA;}&#xA;&lt;/style&gt;&#xA;&lt;details&gt;&lt;summary&gt;目录&lt;/summary&gt;&lt;p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#git-install&#34;&gt;Git Install&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#ubuntu&#34;&gt;Ubuntu&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#install&#34;&gt;Install&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#config&#34;&gt;Config&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#macos&#34;&gt;macOS&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#install-1&#34;&gt;Install&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#config-1&#34;&gt;Config&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#git-repository&#34;&gt;Git Repository&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#zip-install&#34;&gt;ZIP Install&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#httphttps-clone&#34;&gt;HTTP/HTTPS Clone&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#clone&#34;&gt;Clone&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#ssh-clone&#34;&gt;SSH Clone&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#ssh-clone-1&#34;&gt;SSH Clone&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#ssh-key&#34;&gt;SSH Key&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#clone-1&#34;&gt;Clone&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#github-cli&#34;&gt;GitHub CLI&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E5%AE%89%E8%A3%85&#34;&gt;安装&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E4%BD%BF%E7%94%A8&#34;&gt;使用&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#git-flow&#34;&gt;Git flow&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#create-a-branch&#34;&gt;Create a Branch&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#add-commit&#34;&gt;Add Commit&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#open-a-pull-request&#34;&gt;Open a Pull Request&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#discuss-and-review-your-code&#34;&gt;Discuss and Review your code&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#deploy&#34;&gt;Deploy&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#merge&#34;&gt;Merge&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#git-branch&#34;&gt;Git Branch&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#git-commit&#34;&gt;Git Commit&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#commit-message&#34;&gt;commit message&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E4%B8%BA%E4%BB%80%E4%B9%88%E8%A6%81%E5%86%99%E5%A5%BD-commit-message&#34;&gt;为什么要写好 commit message&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E5%9F%BA%E6%9C%AC%E8%A6%81%E6%B1%82&#34;&gt;基本要求&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#git-pull-request&#34;&gt;Git Pull Request&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#fork&#34;&gt;Fork&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#clone-2&#34;&gt;Clone&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#branch&#34;&gt;Branch&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E7%A1%AE%E8%AE%A4%E5%88%86%E6%94%AF&#34;&gt;确认分支&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E5%88%9B%E5%BB%BA%E7%89%B9%E6%80%A7feature%E5%88%86%E6%94%AF&#34;&gt;创建特性(feature)分支&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#change&#34;&gt;Change&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E4%BF%AE%E6%94%B9%E9%A1%B9%E7%9B%AE%E4%BB%A3%E7%A0%81&#34;&gt;修改项目代码&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E6%8F%90%E4%BA%A4%E4%BF%AE%E6%94%B9&#34;&gt;提交修改&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E5%88%9B%E5%BB%BA%E8%BF%9C%E7%A8%8B%E5%88%86%E6%94%AF&#34;&gt;创建远程分支&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#pull-request&#34;&gt;Pull Request&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#git-discuss-and-review&#34;&gt;Git Discuss and Review&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#git-deploy&#34;&gt;Git Deploy&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#git-merge&#34;&gt;Git Merge&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#git-merge-%E6%9C%AC%E4%BB%93%E5%BA%93%E7%9A%84%E5%88%86%E6%94%AF&#34;&gt;Git Merge 本仓库的分支&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E4%BD%BF%E7%94%A8%E5%9C%BA%E6%99%AF&#34;&gt;使用场景&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E6%93%8D%E4%BD%9C%E6%AD%A5%E9%AA%A4&#34;&gt;操作步骤&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#git-merge-%E5%85%B6%E4%BB%96%E4%BB%93%E5%BA%93%E7%9A%84%E5%88%86%E6%94%AF&#34;&gt;Git Merge 其他仓库的分支&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E4%BD%BF%E7%94%A8%E5%9C%BA%E6%99%AF-1&#34;&gt;使用场景&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E6%93%8D%E4%BD%9C%E6%AD%A5%E9%AA%A4-1&#34;&gt;操作步骤&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#git-merge-%E5%85%B6%E4%BB%96%E4%BD%BF%E7%94%A8%E5%9C%BA%E6%99%AF&#34;&gt;Git Merge 其他使用场景&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#git-gitignore&#34;&gt;Git .gitignore&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E8%AE%BE%E7%BD%AE-gitignore&#34;&gt;设置 .gitignore&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E6%9B%B4%E6%96%B0-gitignore&#34;&gt;更新 .gitignore&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#git-fetch-and-pull&#34;&gt;Git Fetch and Pull&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#git-fetch&#34;&gt;git fetch&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#git-pull&#34;&gt;git pull&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#git-status&#34;&gt;Git Status&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#git-diff&#34;&gt;Git Diff&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#git-rm&#34;&gt;Git rm&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#git-checkout&#34;&gt;Git Checkout&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#git-reset&#34;&gt;Git Reset&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#git-blame&#34;&gt;Git blame&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E7%AE%80%E5%8D%95%E4%BD%BF%E7%94%A8&#34;&gt;简单使用&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E9%AB%98%E9%98%B6%E4%BD%BF%E7%94%A8&#34;&gt;高阶使用&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#git-large-file-storage&#34;&gt;Git Large File Storage&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E5%AE%89%E8%A3%85-1&#34;&gt;安装&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E4%B8%BA%E8%B4%A6%E6%88%B7%E8%AE%BE%E7%BD%AE-git-lfs&#34;&gt;为账户设置 Git LFS&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E4%B8%BA%E4%BB%93%E5%BA%93%E8%AE%BE%E7%BD%AE-git-lfs&#34;&gt;为仓库设置 Git LFS&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E4%B8%8B%E4%B8%80%E6%AD%A5&#34;&gt;下一步&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>SSH</title>
      <link>https://wangzhefeng.com/tool/linux/ssh/</link>
      <pubDate>Mon, 25 Jan 2021 00:00:00 +0000</pubDate>
      <guid>https://wangzhefeng.com/tool/linux/ssh/</guid>
      <description>&lt;style&gt;&#xA;details {&#xA;    border: 1px solid #aaa;&#xA;    border-radius: 4px;&#xA;    padding: .5em .5em 0;&#xA;}&#xA;summary {&#xA;    font-weight: bold;&#xA;    margin: -.5em -.5em 0;&#xA;    padding: .5em;&#xA;}&#xA;details[open] {&#xA;    padding: .5em;&#xA;}&#xA;details[open] summary {&#xA;    border-bottom: 1px solid #aaa;&#xA;    margin-bottom: .5em;&#xA;}&#xA;img {&#xA;    pointer-events: none;&#xA;}&#xA;&lt;/style&gt;&#xA;&lt;details&gt;&lt;summary&gt;目录&lt;/summary&gt;&lt;p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E5%AE%89%E8%A3%85-ssh-%E6%9C%8D%E5%8A%A1debina&#34;&gt;安装 SSH 服务(Debina)&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E5%AE%89%E8%A3%85-ssh&#34;&gt;安装 SSH&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#ssh-%E6%97%A0%E6%B3%95%E8%BF%9E%E6%8E%A5%E7%9A%84%E5%9C%BA%E6%99%AF%E6%8E%92%E6%9F%A5&#34;&gt;SSH 无法连接的场景排查&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E6%A3%80%E6%9F%A5%E7%BD%91%E7%BB%9C&#34;&gt;检查网络&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E6%A3%80%E6%9F%A5%E7%AB%AF%E5%8F%A3&#34;&gt;检查端口&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E6%A3%80%E6%9F%A5%E6%9C%8D%E5%8A%A1&#34;&gt;检查服务&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E4%BB%80%E4%B9%88%E6%98%AF-ssh&#34;&gt;什么是 SSH&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#ssh-%E5%B7%A5%E4%BD%9C%E5%8E%9F%E7%90%86&#34;&gt;SSH 工作原理&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#ssh-%E5%AD%98%E5%9C%A8%E7%9A%84%E9%97%AE%E9%A2%98--%E4%B8%AD%E9%97%B4%E4%BA%BA%E6%94%BB%E5%87%BB&#34;&gt;SSH 存在的问题&amp;ndash;中间人攻击&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#ssh-%E5%8A%9F%E8%83%BD&#34;&gt;SSH 功能&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E6%93%8D%E4%BD%9C%E5%9C%BA%E6%99%AF&#34;&gt;操作场景&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F&#34;&gt;操作系统&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E9%89%B4%E6%9D%83%E6%96%B9%E5%BC%8F&#34;&gt;鉴权方式&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E5%89%8D%E6%8F%90%E6%9D%A1%E4%BB%B6&#34;&gt;前提条件&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#ssh-%E5%8F%A3%E4%BB%A4%E7%99%BB%E5%BD%95&#34;&gt;SSH 口令登录&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E6%93%8D%E4%BD%9C%E6%AD%A5%E9%AA%A4&#34;&gt;操作步骤&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E9%97%AE%E9%A2%98%E5%A4%84%E7%90%86&#34;&gt;问题处理&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#ssh-%E5%85%AC%E9%92%A5%E7%99%BB%E5%BD%95&#34;&gt;SSH 公钥登录&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#ssh-%E5%B8%B8%E7%94%A8%E8%BD%AF%E4%BB%B6&#34;&gt;SSH 常用软件&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#ssh-%E7%AB%AF%E5%8F%A3%E8%BD%AC%E5%8F%91&#34;&gt;SSH 端口转发&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E7%AB%AF%E5%8F%A3%E8%BD%AC%E5%8F%91%E7%9A%84%E5%8F%82%E6%95%B0&#34;&gt;端口转发的参数&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E6%9C%AC%E5%9C%B0%E8%BD%AC%E5%8F%91&#34;&gt;本地转发&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E8%BF%9C%E7%A8%8B%E8%BD%AC%E5%8F%91&#34;&gt;远程转发&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E5%8A%A8%E6%80%81%E7%AB%AF%E5%8F%A3%E8%BD%AC%E5%8F%91&#34;&gt;动态端口转发&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#ssh-%E8%BF%9C%E7%A8%8B%E6%93%8D%E4%BD%9C&#34;&gt;SSH 远程操作&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E5%88%A9%E7%94%A8%E8%BF%9C%E7%A8%8B%E8%BD%AC%E5%8F%91%E5%AE%9E%E7%8E%B0%E4%BB%A3%E7%90%86%E5%8A%9F%E8%83%BD&#34;&gt;利用远程转发实现代理功能&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#%E5%86%85%E7%BD%91%E5%A4%96%E7%BD%91%E7%A9%BF%E9%80%8F&#34;&gt;内网、外网穿透&lt;/a&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;#cpolar-%E5%86%85%E7%BD%91%E7%A9%BF%E9%80%8F%E6%9C%8D%E5%8A%A1&#34;&gt;cpolar 内网穿透服务&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
