<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>基本技能 on ClearSec Wiki</title><link>https://www.clearsec.org/wikis/skills/basic/</link><description>Recent content in 基本技能 on ClearSec Wiki</description><generator>Hugo</generator><language>zh-cn</language><atom:link href="https://www.clearsec.org/wikis/skills/basic/index.xml" rel="self" type="application/rss+xml"/><item><title>如何解决问题</title><link>https://www.clearsec.org/wikis/skills/basic/meet-problems/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://www.clearsec.org/wikis/skills/basic/meet-problems/</guid><description>&lt;h1 id="当我遇到问题时我该怎么做"&gt;当我遇到问题时，我该怎么做&amp;hellip;&lt;/h1&gt;
&lt;blockquote&gt;
&lt;p&gt;科协水群里闲聊时，有人“暴言”：“在贵系有技术问题时，摇人比查文档更方便。”遇到问题时多和其他人交流、避免闷头苦干当然是支持的，但这并不意味着问问题前不需要付出努力（例如在搜索引擎上查找）、问问题时对方有义务替你解答&amp;hellip;&amp;hellip;&lt;/p&gt;
&lt;p&gt;&lt;right&gt;—— 摘自 “酒井科协” 公众号 2022 年 3 月 25 日文章&lt;/right&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;学习过程中遇到问题是在所难免的，而如何面对遇到的问题，却是值得我们学习的话题。本篇文章我们从“如何使用搜索引擎”、“如何查阅官方文档”、“如何选择常用网站”、“如何有效地进行提问”这几种方式来阐述，“当我在学习过程中遇到问题时，我应该怎样做&amp;hellip;”&lt;/p&gt;
&lt;h2 id="如何使用搜索引擎"&gt;如何使用搜索引擎&lt;/h2&gt;
&lt;h3 id="我应该怎样选用搜索引擎"&gt;我应该怎样选用搜索引擎&lt;/h3&gt;
&lt;p&gt;“百度一下，你就知道”诚然是大众的选择，而我们必须指出其在搜索结果呈现时的局限性。具体来说，由于一些商业性因素的限制，它大概率会返回一些与搜索结果不是最强相关的内容。我们在这里推荐两款搜索引擎：如果你因为中国大陆的限制无法访问互联网上的一部分内容，我们推荐你使用 &lt;strong&gt;“Bing 国际版”&lt;/strong&gt;，而如果你可以访问到世界互联网上的内容，我们则推荐你使用 &lt;strong&gt;“Google”&lt;/strong&gt;。我们接下来的讨论均以后者作为基础展开。&lt;/p&gt;
&lt;h3 id="我应该如何使用搜索引擎"&gt;我应该如何使用搜索引擎&lt;/h3&gt;
&lt;p&gt;相信大家都掌握了搜索引擎的基本使用方法，也掌握了例如“搜索关键词”而不是“搜索整句话”的这种基本搜索技巧。接下来我们演示一些较为进阶的搜索方法。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;指定网站搜索 &lt;code&gt;site:web.site&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;精确匹配 &lt;code&gt;&amp;quot;Exact Match&amp;quot;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;必须包含 &lt;code&gt;+&lt;/code&gt; 与必须不包含 &lt;code&gt;-&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;任意匹配 &lt;code&gt;*&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;指定时间范围，例如只获取过去 1 年内的搜索结果，这样可以保证搜索结果的时效性&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;参考资料：&lt;a href="https://www.instructables.com/How-to-Properly-Use-a-Search-Engine/"&gt;How to properly use a search engine&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id="如何查阅官方文档"&gt;如何查阅官方文档&lt;/h2&gt;
&lt;p&gt;大部分你使用的工具或者库都会有自己的官网网站；有些即使没有官方网站也会有自己的 GitHub Repo 和配套的 Wiki。了解一个工具或者函数库最全面、也是最便利的方法，实际上是读它对应部分的说明文档。&lt;/p&gt;
&lt;p&gt;比如，我们想了解怎么在 PyTorch 中实现叉乘，或许我们可以在百度中搜索 &lt;code&gt;pytorch 叉乘&lt;/code&gt;，然后点开一个 CSDN 教程，但这远没有 Google 搜索 &lt;code&gt;pytorch cross product&lt;/code&gt;，然后打开 pytorch.org 的官方文档进行阅读来的全面而透彻。&lt;/p&gt;
&lt;p&gt;再比如，如果我想快速上手一个名叫 “Carla” 的模拟仿真工具，最合适的方式，应该是搜索 “carla doc”，然后打开&lt;a href="https://carla.readthedocs.io/en/latest/"&gt;官方文档&lt;/a&gt;阅读其中 “Getting Started” 部分，这样能对这个软件有最基本的了解。之后再根据自己的需要阅读其他部分的内容。&lt;/p&gt;</description></item><item><title>VSCode 配置</title><link>https://www.clearsec.org/wikis/skills/basic/vscode/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://www.clearsec.org/wikis/skills/basic/vscode/</guid><description>&lt;h1 id="vscode-配置"&gt;VSCode 配置&lt;/h1&gt;
&lt;p&gt;VSCode 是一款&lt;strong&gt;轻量级&lt;/strong&gt;的&lt;strong&gt;代码编辑器&lt;/strong&gt;，可以通过安装各种各样不同&lt;strong&gt;扩展&lt;/strong&gt;的方式来实现开发者所需要的功能。&lt;/p&gt;
&lt;div class="td-alert td-alert--md alert alert-note" role="alert"&gt;&lt;div class="td-alert-heading alert-heading" role="heading"&gt;说明&lt;/div&gt;
 &lt;div class="td-alert-body"&gt;
 &lt;p&gt;&lt;strong&gt;区分：代码编辑器（Editor）与集成开发环境（IDE, Integrated Development Environment）&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;代码编辑器事实上我们可以看成是一个记事本（没错，如果是 Windows 用户，就是你按下 Win+R 输入 notepad 回车之后的那个记事本），其最基本的功能是文档编辑。不过之所以将其称为是&lt;strong&gt;代码编辑器&lt;/strong&gt;，是因为它虽然继承自一般的文档编辑器，又具备了一些一般的文档编辑器所不具备的功能。具体来说，例如自动语法高亮，自动补全，甚至是自动代码重构等等。&lt;/p&gt;
&lt;p&gt;集成开发环境（IDE）是一种用于构建应用程序的软件，&lt;strong&gt;可将常用的开发人员工具合并到单个图形用户界面&lt;/strong&gt;（GUI）中。具体来说，我们只需要简单的点击按钮，可能就可以完成程序的编译、链接、运行、调试等等工作。而这些工作在最初都是需要人手工在命令行中完成的。我们在《程序设计基础》课程中最初使用的 Dev-C++ 便是一个集成开发环境。&lt;/p&gt;
&lt;p&gt;我们今天要介绍的 VSCode 是一款轻量级的&lt;strong&gt;代码编辑器&lt;/strong&gt;。如果没有各种扩展插件的支持的话，可能我们只能把它称作是大号的 Notepad++，而正是因为社区中各种各样的扩展，VSCode 才得以展现其强大。
&lt;img src="https://s2.loli.net/2022/02/09/psKk8yJ2CxMic1O.png" alt="image-20220209114623794"&gt;&lt;/p&gt;
 &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;本文我们介绍 VSCode 的基本配置，重点在于介绍一些未来可能会用到的扩展插件。按照本文的流程完成后，你应该等效地完成了足以应对《面向对象程序设计基础》课程中的代码的集成开发环境的配置。此外，我们还会介绍一些基本的调试方法，而这恰恰是 VSCode 比 Dev-C++ 在现阶段不知道高到哪里去的地方。&lt;/p&gt;
&lt;p&gt;事实上，在未来，我们可以用 VSCode 配置 Python 开发环境，配置软件工程课程中所需要的框架的开发环境，而这些都是通过“扩展”（Extension）来实现的。&lt;/p&gt;</description></item><item><title>Git 入门</title><link>https://www.clearsec.org/wikis/skills/basic/git/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://www.clearsec.org/wikis/skills/basic/git/</guid><description>&lt;h1 id="git分布式版本控制软件"&gt;Git：分布式版本控制软件&lt;/h1&gt;
&lt;div class="td-alert td-alert--md alert alert-note" role="alert"&gt;&lt;div class="td-alert-heading alert-heading" role="heading"&gt;说明&lt;/div&gt;
 &lt;div class="td-alert-body"&gt;
 &lt;p&gt;&lt;strong&gt;什么是分布式版本控制软件&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://i.loli.net/2021/10/07/yTHKCmGkxJXUOSj.png" alt="image-20211007231126799"&gt;&lt;/p&gt;
&lt;p&gt;在代码开发过程中，总会遇到一些问题。代码不知道改了哪里不能运行了，想要回退怎么办？多个人同时想对代码进行修改（并行开发），开发完后怎么合并？显然，有一个能帮助我们解决这些问题的工具将极大的加快我们开发的速度。而这种工具，便是版本控制软件。&lt;/p&gt;
&lt;p&gt;版本控制软件帮助使用者找出：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;不同版本之间的差异&lt;/li&gt;
&lt;li&gt;谁做出了这个修改&lt;/li&gt;
&lt;li&gt;什么时候做出了这个修改&lt;/li&gt;
&lt;li&gt;做出修改的人给出的修改理由&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;那么，什么是分布式的版本控制软件呢？为了了解清楚，我们需要区分&lt;strong&gt;中央版本控制系统&lt;/strong&gt;和&lt;strong&gt;分布式版本控制系统&lt;/strong&gt;的区别。&lt;/p&gt;
&lt;p&gt;中央版本控制系统必须同时存在服务端和客户端。当进行代码备份时，客户端会向服务端发出请求，并将此次修改的内容发送到服务器当中去，服务端收到请求后，会将代码存储在服务器当中；同样当客户端想查看某一个版本的修改内容或者想恢复到某一个版本之时，客户端也会发送请求到服务端，服务在端接收到请求之后会做出相应的处理并返回给客户端。也就是说，在业务流程过程中，服务端必须存在，&lt;strong&gt;所有请求必须经过服务端的处理&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;分布式版本控制器，主要是将备份的代码以及记录&lt;strong&gt;完全独立在本地存储&lt;/strong&gt;。比如说当你想将代码恢复到某一个版本的时候，本地版本控制器&lt;strong&gt;不需要依赖网络&lt;/strong&gt;便可以完成此操作，因为本地版本控制器拥有&lt;strong&gt;完整独立的一套控制系统&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;Excerpted from &lt;a href="https://www.imooc.com/read/51/article/1008"&gt;https://www.imooc.com/read/51/article/1008&lt;/a&gt;.
[!NOTE]
&lt;strong&gt;什么是 Git&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Git 是 Linux（一种程序员热爱的操作系统）之父 Linus Torvalds 为开发 Linux 内核而建立的一个&lt;strong&gt;分布式版本控制软件&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;Git 除了版本控制软件本身的优势以外，还可以：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;通过查看 &lt;code&gt;git history&lt;/code&gt;，开发者可以看到一个项目开发的时间线&lt;/li&gt;
&lt;li&gt;通过 &lt;code&gt;git branch&lt;/code&gt;（分支），开发者可以在不用担心影响主代码的情况下进行开发&lt;/li&gt;
&lt;/ul&gt;
 &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id="前置知识"&gt;前置知识&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;命令行命令的使用操作&lt;/li&gt;
&lt;li&gt;愿意&lt;strong&gt;动手实践&lt;/strong&gt;的决心（多尝试）&lt;/li&gt;
&lt;li&gt;做好笔记整理与总结的能力（遗忘后便于快速回忆）&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="从安装与配置开始"&gt;从安装与配置开始&lt;/h2&gt;
&lt;h3 id="windows"&gt;Windows&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;编辑器&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Git 需要绑定文本编辑器使用，自带支持以下编辑器：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Nano&lt;/li&gt;
&lt;li&gt;Vim&lt;/li&gt;
&lt;li&gt;Notepad++&lt;/li&gt;
&lt;li&gt;VS Code&lt;/li&gt;
&lt;li&gt;Sublime&lt;/li&gt;
&lt;li&gt;Atom&lt;/li&gt;
&lt;li&gt;VS Codium&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;如果你没有安装上述文本编辑器，那么你使用的很可能是⻛评并不好的记事本（英文：Notepad），不建议拿它作为 Git 的绑定编辑器。这种情况下建议使用 Notepad++，它的操作与界面可以和记事本实现很好的过渡。可以使用 &lt;a href="https://cloud.tsinghua.edu.cn/f/9bd487642fcb4e468c67/?dl=1"&gt;科协云盘下载链接&lt;/a&gt; 下载，安装过程中全部点“下一步”（或同位置的按钮）即可。完成之后你将和记事本永远告别，打开文本文件的默认方式会变成 Notepad++。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;下载&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;安装包下载地址：https://gitforwindows.org/&lt;/li&gt;
&lt;li&gt;国内镜像：https://npm.taobao.org/mirrors/git-for-windows/&lt;/li&gt;
&lt;li&gt;清华镜像（校内访问较快）：https://mirrors.tuna.tsinghua.edu.cn/github-release/git-for-windows/git/&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;安装&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;下面内容英文大佬或者熟练掌握了 &lt;code&gt;git config&lt;/code&gt; 指令（乃至会直接修改配置文件）的同学可以忽略在安装过程中大部分选项，直接点 Next 即可。但是有两个地方需要注意：编辑器和换行符。&lt;/p&gt;</description></item><item><title>Linux 入门</title><link>https://www.clearsec.org/wikis/skills/basic/linux/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://www.clearsec.org/wikis/skills/basic/linux/</guid><description>&lt;h1 id="linux"&gt;Linux&lt;/h1&gt;
&lt;center&gt;
 &lt;img src="https://i.loli.net/2021/10/10/NHZOsPCBmazyWjh.png" height="20%" width="20%"&gt;
&lt;/center&gt;
&lt;h2 id="前置知识"&gt;前置知识&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;有一台自己的电脑&lt;/li&gt;
&lt;li&gt;愿意&lt;strong&gt;动手实践&lt;/strong&gt;的决心（多尝试）&lt;/li&gt;
&lt;li&gt;做好笔记整理与总结的能力（遗忘后便于快速回忆）&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="序言-prologue"&gt;序言 Prologue&lt;/h2&gt;
&lt;h3 id="what-is-linux"&gt;What Is Linux?&lt;/h3&gt;
&lt;p&gt;Linux 是一种自由和开放源码的类 UNIX 操作系统，其内核由 Linus Torvalds 在 1991 年发布。&lt;/p&gt;
&lt;p&gt;Linux 也是自由软件和开放源代码软件发展中最著名的例子，只要遵循 GNU，任何个人和机构都可以自由地使用 Linux 的所有底层源代码，这使得它得到来自全世界软件爱好者和组织的开发支持。&lt;/p&gt;
&lt;p&gt;Linux 以各种形式被广泛应用在各个领域，包括但不限于：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;服务器、主机、超级计算机&lt;/li&gt;
&lt;li&gt;嵌入式系统（机顶盒、移动设备等）&lt;/li&gt;
&lt;li&gt;基础设施（红绿灯、工业传感器）&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="linux-distros"&gt;Linux Distros&lt;/h3&gt;
&lt;p&gt;我们平时使用的“Linux”严格来说是 Linux 发行版本，而 Linux 狭义上单指操作系统的内核。&lt;/p&gt;
&lt;p&gt;发行版本在内核的基础上还包括安装工具、系统配置、图形桌面界面、各种 GNU 软件等，使得这个系统能够适用于各种使用目的。&lt;/p&gt;
&lt;p&gt;常见的 Linux 发行版有 Debian、Ubuntu、Fedora、CentOS、Arch Linux 等。不同的发行版使用的软件不同，有些发行版本是设计成专门的目的（比如 Kali 用于网安）。&lt;/p&gt;
&lt;p&gt;我们一般使用的虚拟机的发行版为 Ubuntu 20.04。&lt;/p&gt;
&lt;h3 id="ways-to-use-linux"&gt;Ways to Use Linux&lt;/h3&gt;
&lt;p&gt;我们接触 Linux 的方式通常有以下几种：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;安装 Linux 系统（单系统、Windows &amp;amp; Linux 双系统）&lt;/li&gt;
&lt;li&gt;WSL（英语：Windows Subsystem for Linux）&lt;strong&gt;(Recommended)&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;虚拟机（Virtualbox、Docker）&lt;/li&gt;
&lt;li&gt;服务器远程连接（SSH、RDP）&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;我推荐有条件的同学给电脑装一个Linux系统。&lt;s&gt;这样你就能在各种配置中度过一段漫长而有趣的时光了&lt;/s&gt;。&lt;/p&gt;</description></item><item><title>Markdown 入门</title><link>https://www.clearsec.org/wikis/skills/basic/markdown/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://www.clearsec.org/wikis/skills/basic/markdown/</guid><description>&lt;h1 id="markdown-入门"&gt;Markdown 入门&lt;/h1&gt;
&lt;div class="td-alert td-alert--md alert alert-note" role="alert"&gt;&lt;div class="td-alert-heading alert-heading" role="heading"&gt;说明&lt;/div&gt;
 &lt;div class="td-alert-body"&gt;
 &lt;p&gt;&lt;strong&gt;前言&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Markdown 是一种学习成本较低的轻量级标记语言。它用简单的标记语法代替按钮，因此能省去频繁使用鼠标调整排版的麻烦，为文档编写者提供便利。用 Markdown 编写的内容可导出为 HTML、Word、PDF 等多种格式的文档。由于易读易写，它在 GitHub、简书等网站上也有广泛的应用。&lt;/p&gt;
&lt;p&gt;通过阅读本文档，读者可以在五分钟内快速学习到常用的 Markdown 标记。更多的内容请移步菜鸟教程。&lt;/p&gt;
&lt;p&gt;我们强烈建议计算机类的同学们在大一的春季学期学会 Markdown 或 LaTeX 二者中其中之一，因为这将是我们后续实验报告或大作业报告将利用的常用工具。&lt;/p&gt;
&lt;p&gt;在开始学习 Markdown 语法之前，建议先通过 &lt;a href="https://typora.io/"&gt;Typora 官网&lt;/a&gt; 安装好 Typora 编辑器。&lt;/p&gt;
 &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id="语法"&gt;语法&lt;/h2&gt;
&lt;h3 id="标题"&gt;标题&lt;/h3&gt;
&lt;p&gt;共有 1-6 级标题，使用 &lt;code&gt;#&lt;/code&gt; 标记。&lt;code&gt;#&lt;/code&gt; 数量与标题级别对应。注意 &lt;code&gt;#&lt;/code&gt; 与文字间的空格不可省略。&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-markdown" data-lang="markdown"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="gu"&gt;#### 四级标题
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="gu"&gt;##### 五级标题
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="gu"&gt;###### 六级标题
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h4 id="四级标题"&gt;四级标题&lt;/h4&gt;
&lt;h5 id="五级标题"&gt;五级标题&lt;/h5&gt;
&lt;h6 id="六级标题"&gt;六级标题&lt;/h6&gt;
&lt;h3 id="字体"&gt;字体&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-markdown" data-lang="markdown"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;*斜体* &lt;span class="ge"&gt;_斜体_&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="gs"&gt;**粗体**&lt;/span&gt; &lt;span class="gs"&gt;__粗体__&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="ge"&gt;**&lt;/span&gt;*粗斜体*** &lt;span class="gs"&gt;___粗斜体___&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="gd"&gt;~~删除线~~&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&amp;lt;u&amp;gt;下划线&amp;lt;/u&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;em&gt;斜体&lt;/em&gt; &lt;em&gt;斜体&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;粗体&lt;/strong&gt; &lt;strong&gt;粗体&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;粗斜体&lt;/strong&gt;&lt;/em&gt; &lt;em&gt;&lt;strong&gt;粗斜体&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;del&gt;删除线&lt;/del&gt;&lt;/p&gt;
&lt;p&gt;&lt;u&gt;下划线&lt;/u&gt;&lt;/p&gt;
&lt;h3 id="列表"&gt;列表&lt;/h3&gt;
&lt;p&gt;无序列表用 &lt;code&gt;*&lt;/code&gt; 或 &lt;code&gt;+&lt;/code&gt; 或 &lt;code&gt;-&lt;/code&gt; 标识，有序列表用数字和 &lt;code&gt;.&lt;/code&gt; 来标识，支持列表嵌套。&lt;/p&gt;</description></item><item><title>LaTeX 入门</title><link>https://www.clearsec.org/wikis/skills/basic/latex/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://www.clearsec.org/wikis/skills/basic/latex/</guid><description>&lt;h1 id="latex"&gt;LaTeX&lt;/h1&gt;
&lt;p&gt;虽然 Markdown 很好用，但是生成的 pdf 文档看起来就是&lt;s&gt;没有范&lt;/s&gt;不够正式。此外，使用 LaTeX 也是我们之后写论文的必备技能。&lt;/p&gt;
&lt;p&gt;本教程主要涉及已对 Markdown 较为熟识之后的迁移学习。&lt;/p&gt;
&lt;div class="td-alert td-alert--md alert alert-note" role="alert"&gt;&lt;div class="td-alert-heading alert-heading" role="heading"&gt;说明&lt;/div&gt;
 &lt;div class="td-alert-body"&gt;
 &lt;p&gt;实际上，你可以在 Markdown 里使用 LaTeX 的子集 &lt;a href="https://katex.org/"&gt;KaTeX&lt;/a&gt;&lt;/p&gt;
 &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id="前置知识"&gt;前置知识&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Markdown 入门&lt;/li&gt;
&lt;li&gt;Markdown 编写数学公式的方法&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="latex-简介"&gt;LaTeX 简介&lt;/h2&gt;
&lt;p&gt;我们首先解决以下几个问题：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;LaTeX 是什么？&lt;/li&gt;
&lt;li&gt;LaTeX 怎样运作？&lt;/li&gt;
&lt;li&gt;我该在哪里写 LaTex？&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;在解决上述几个问题之后，我们再详细介绍该怎么写 LaTeX 的问题。&lt;/p&gt;
&lt;h3 id="latex-是什么"&gt;LaTeX 是什么？&lt;/h3&gt;
&lt;p&gt;相信你读到这里已经做好觉悟要被灌输一系列关键词和其对应概念了。让我们开始：&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;历史回溯到 Knuth 教授的巨著 The Art of Computer Programming 将要出版之际，当出版商将他们排版的书稿草样交给 Knuth 教授的时候，他对于其中复杂数学公式的排版处理十分不满。其排版之粗糙，已达到了会影响人们理解原书内容的程度。因此，对于复杂的数学和物理公式，我们急需一种能够将其在互联网上传输的编码格式，使得人能阅读的公式和机器能存储的公式之间达到一种互相转化。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;TeX&lt;/strong&gt;：一种排版引擎，也是该引擎使用的标记语言的名称。引擎是指能够断行、分页的程序，标记语言是控制命令和文本结合的格式。可以类比理解成你写的 C++ 源代码或者更底层的机器指令码，如输入 &lt;code&gt;$2^6$&lt;/code&gt;。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;LaTeX&lt;/strong&gt;：是一个基于 TeX 的排版系统，将用户按照它的格式编写的文档解释成 TeX 引擎能理解的形式并交付给 TeX 引擎处理，再将最终结果返回给用户。可以类比理解成 g++ 编译器，将上述代码渲染为 &lt;span class="katex"&gt;&lt;span class="katex-mathml"&gt;&lt;math xmlns="http://www.w3.org/1998/Math/MathML"&gt;&lt;semantics&gt;&lt;mrow&gt;&lt;msup&gt;&lt;mn&gt;2&lt;/mn&gt;&lt;mn&gt;6&lt;/mn&gt;&lt;/msup&gt;&lt;/mrow&gt;&lt;annotation encoding="application/x-tex"&gt;2^6&lt;/annotation&gt;&lt;/semantics&gt;&lt;/math&gt;&lt;/span&gt;&lt;span class="katex-html" aria-hidden="true"&gt;&lt;span class="base"&gt;&lt;span class="strut" style="height:0.8141em;"&gt;&lt;/span&gt;&lt;span class="mord"&gt;&lt;span class="mord"&gt;2&lt;/span&gt;&lt;span class="msupsub"&gt;&lt;span class="vlist-t"&gt;&lt;span class="vlist-r"&gt;&lt;span class="vlist" style="height:0.8141em;"&gt;&lt;span style="top:-3.063em;margin-right:0.05em;"&gt;&lt;span class="pstrut" style="height:2.7em;"&gt;&lt;/span&gt;&lt;span class="sizing reset-size6 size3 mtight"&gt;&lt;span class="mord mtight"&gt;6&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;pdfTeX&lt;/strong&gt; 与 &lt;strong&gt;pdfLaTeX&lt;/strong&gt;：原版 TeX 系统生成的文件是 &lt;code&gt;dvi&lt;/code&gt; 格式，而 pdfTeX 系统下生成的文件是 &lt;code&gt;pdf&lt;/code&gt; 格式。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;XeTeX&lt;/strong&gt; 与 &lt;strong&gt;XeLaTeX&lt;/strong&gt;：上述 TeX 系统生成的字符集只支持 ASCII 字符。在 XeTeX 出现之前，我们曾使用过引用引入 CJK 宏库（解决不支持中日韩字符问题的一个库）手段来处理中文字符的问题。但是这个排版系统对所有 Unicode 字符都实现了支持。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;LuaTeX&lt;/strong&gt; 与 &lt;strong&gt;LuaLaTeX&lt;/strong&gt;：&lt;code&gt;pdfTeX&lt;/code&gt; 系统的继承者，支持使用一些用户自定义脚本来实现之前需要写成 TeX 的功能。支持 Unicode，内联 lua，支持 OpenType。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;这里我们推荐使用 &lt;code&gt;XeTeX&lt;/code&gt; 系统来进行我们日常的工作，我们后续的教程也围绕这个排版系统展开。为了简洁起见，我们后续不再区分上述概念，统一使用 &lt;code&gt;TeX&lt;/code&gt;，&lt;code&gt;LaTeX&lt;/code&gt; 来表述我们在说的这个话题。&lt;/p&gt;</description></item><item><title>Web 与 Web 应用基础</title><link>https://www.clearsec.org/wikis/skills/basic/web/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://www.clearsec.org/wikis/skills/basic/web/</guid><description>&lt;h1 id="web-与-web-应用基础"&gt;Web 与 Web 应用基础&lt;/h1&gt;
&lt;h2 id="前言"&gt;前言&lt;/h2&gt;
&lt;p&gt;当我们访问网站的时候，发生了些什么？网页实质上是文件。当我们通过浏览器访问网站时，浏览器会向服务器发送请求，服务器会将网页文件发送给浏览器，浏览器再将网页文件渲染成我们看到的网页。&lt;/p&gt;
&lt;h2 id="web-页面"&gt;Web 页面&lt;/h2&gt;
&lt;h3 id="html"&gt;HTML&lt;/h3&gt;
&lt;p&gt;HTML (Hyper Text Markup Language, 超文本标记语言) 是一种用于描述网页文档的语言。HTML 定义了许多不同种类的标签, 它们被尖括号包围，起始标签和结束标签通常成对出现，标签自身则表示了内容的类型与格式,标签内含有具体的内容。例如，下面的代码表示 &lt;strong&gt;加粗的&lt;/strong&gt; “你好”&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-html" data-lang="html"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;b&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;你好&lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;b&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;在 Word 中，我们通过手动在 Tab 栏里调整格式，文本的写作、结构和格式的调整相分离。而在 HTML 中，&lt;strong&gt;内容的格式信息以标签的形式，作为纯文本存储在文件中&lt;/strong&gt;，便于生成、编辑、传输、渲染。&lt;/p&gt;
&lt;p&gt;下面是一些常见的用来表征文本的 HTML 标签：&lt;/p&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;标签&lt;/th&gt;
					&lt;th&gt;描述&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;&amp;lt;h1&amp;gt;&lt;/code&gt; - &lt;code&gt;&amp;lt;h6&amp;gt;&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;定义标题，从最高级别到最低级别&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;&amp;lt;p&amp;gt;&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;定义段落&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;&amp;lt;ul&amp;gt;&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;定义无序列表&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;&amp;lt;ol&amp;gt;&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;定义有序列表&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;&amp;lt;li&amp;gt;&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;定义列表项&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;&amp;lt;table&amp;gt;&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;定义表格&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;&amp;lt;tr&amp;gt;&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;定义表格的行&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;&amp;lt;td&amp;gt;&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;定义表格的单元格&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;&amp;lt;th&amp;gt;&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;定义表格的表头单元格&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;&amp;lt;strong&amp;gt;&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;定义加粗的文本&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;&amp;lt;em&amp;gt;&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;定义斜体的文本&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;&amp;lt;br&amp;gt;&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;插入换行符&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;作为“超文本标记语言”，HTML 标签还可以表征文本以外的内容，如图片、视频、超链接等能够在网页上显示的内容。此外，一些不在网页直接显示，但与网页有关的内容也可以用对应的标签在 HTML 中呈现。下面是另一些常用的标签：&lt;/p&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;标签&lt;/th&gt;
					&lt;th&gt;描述&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;&amp;lt;html&amp;gt;&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;定义HTML文档的根元素&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;&amp;lt;head&amp;gt;&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;定义文档的头部区域&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;&amp;lt;body&amp;gt;&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;定义文档的主体区域&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;&amp;lt;img&amp;gt;&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;插入图像&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;&amp;lt;a&amp;gt;&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;创建链接&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;&amp;lt;div&amp;gt;&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;定义一个区块或容器&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;&amp;lt;span&amp;gt;&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;标记或包装文本片段&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;&amp;lt;header&amp;gt;&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;定义页眉部分&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;&amp;lt;style&amp;gt;&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;定义内部样式表&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;下面是一个简单的 HTML 文档：&lt;/p&gt;</description></item></channel></rss>