如何在家中使用 SSH 和 SFTP 协议
通过 SSH 和 SFTP 协议,我们能够访问其他设备,有效而且安全的传输文件等等。<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201810/18/205017sh5ghl6w7eaihdd1.png">Media</a>几年前,我决定配置另外一台电脑,以便我能在工作时访问它来传输我所需要的文件。要做到这一点,最基本的一步是要求你的网络提供商(ISP)提供一个固定的地址。有一个不必要但很重要的步骤,就是保证你的这个可以访问的系统是安全的。在我的这种情况下,我计划只在工作场所访问它,所以我能够限定访问的 IP 地址。即使如此,你依然要尽多的采用安全措施。一旦你建立起来这个系统,全世界的人们马上就能尝试访问你的系统。这是非常令人惊奇及恐慌的。你能通过日志文件来发现这一点。我推测有探测机器人在尽其所能的搜索那些没有安全措施的系统。在我设置好系统不久后,我觉得这种访问没什么大用,为此,我将它关闭了以便不再为它操心。尽管如此,只要架设了它,在家庭网络中使用 SSH 和 SFTP 还是有点用的。当然,有一个必备条件,这个另外的电脑必须已经开机了,至于电脑是否登录与否无所谓的。你也需要知道其 IP 地址。有两个方法能够知道,一个是通过浏览器访问你的路由器,一般情况下你的地址格式类似于 192.168.1.254 这样。通过一些搜索,很容易找出当前是开机的并且接在 eth0 或者 wifi…
通过 SSH 和 SFTP 协议,我们能够访问其他设备,有效而且安全的传输文件等等。<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201810/18/205017sh5ghl6w7eaihdd1.png">Media</a>几年前,我决定配置另外一台电脑,以便我能在工作时访问它来传输我所需要的文件。要做到这一点,最基本的一步是要求你的网络提供商(ISP)提供一个固定的地址。有一个不必要但很重要的步骤,就是保证你的这个可以访问的系统是安全的。在我的这种情况下,我计划只在工作场所访问它,所以我能够限定访问的 IP 地址。即使如此,你依然要尽多的采用安全措施。一旦你建立起来这个系统,全世界的人们马上就能尝试访问你的系统。这是非常令人惊奇及恐慌的。你能通过日志文件来发现这一点。我推测有探测机器人在尽其所能的搜索那些没有安全措施的系统。在我设置好系统不久后,我觉得这种访问没什么大用,为此,我将它关闭了以便不再为它操心。尽管如此,只要架设了它,在家庭网络中使用 SSH 和 SFTP 还是有点用的。当然,有一个必备条件,这个另外的电脑必须已经开机了,至于电脑是否登录与否无所谓的。你也需要知道其 IP 地址。有两个方法能够知道,一个是通过浏览器访问你的路由器,一般情况下你的地址格式类似于 192.168.1.254 这样。通过一些搜索,很容易找出当前是开机的并且接在 eth0 或者 wifi…
如何创建和维护你自己的 man 手册
Um 是一个命令行实用程序,可以用于轻松创建和维护包含你到目前为止所了解的所有命令的 man 页面。Media
via https://linux.cn/article-10130-1.html
Um 是一个命令行实用程序,可以用于轻松创建和维护包含你到目前为止所了解的所有命令的 man 页面。Media
via https://linux.cn/article-10130-1.html
如何创建和维护你自己的 man 手册
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201810/19/062636oamaqp01aun6vqov.png">Media</a>我们已经讨论了一些 <a href="https://www.ostechnix.com/3-good-alternatives-man-pages-every-linux-user-know/">man 手册的替代方案</a>。 这些替代方案主要用于学习简洁的 Linux 命令示例,而无需通过全面而过于详细的手册页。 如果你正在寻找一种快速而简单的方法来轻松快速地学习 Linux 命令,那么这些替代方案值得尝试。 现在,你可能正在考虑 —— 如何为 Linux 命令创建自己的 man 式的帮助页面? 这时 “Um” 就派上用场了。 Um 是一个命令行实用程序,可以用于轻松创建和维护包含你到目前为止所了解的所有命令的 man 页面。通过创建自己的手册页,你可以在手册页中避免大量不必要的细节,并且只包含你需要记住的内容。 如果你想创建自己的一套 man 式的页面,“Um” 也能为你提供帮助。 在这个简短的教程中,我们将学习如何安装 “Um” 命令以及如何创建自己的 man 手册页。安装 UmUm 适用于 Linux 和Mac OS。 目前,它只能在 Linux 系统中使用 Linuxbrew 软件包管理器来进行安装。 如果你尚未安装 Linuxbrew,请参考以下链接:<a href="https://www.ostechnix.com/linuxbrew-common-package-manager-linux-mac-os-x/">Linuxbrew:一个用于 Linux 和 MacOS 的通用包管理器</a>安装 Linuxbrew 后,运行以下命令安装 Um 实用程序。<pre class="prettyprint linenums">$ brew install sinclairtarget/wst/um</pre>如果你会看到类似下面的输出,恭喜你! Um 已经安装好并且可以使用了。<pre class="prettyprint linenums">[...]==> Installing sinclairtarget/wst/um==> Downloading https://github.com/sinclairtarget/um/archive/4.0.0.tar.gz==> Downloading from https://codeload.github.com/sinclairtarget/um/tar.gz/4.0.0-=#=# # #==> Downloading https://rubygems.org/gems/kramdown…
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201810/19/062636oamaqp01aun6vqov.png">Media</a>我们已经讨论了一些 <a href="https://www.ostechnix.com/3-good-alternatives-man-pages-every-linux-user-know/">man 手册的替代方案</a>。 这些替代方案主要用于学习简洁的 Linux 命令示例,而无需通过全面而过于详细的手册页。 如果你正在寻找一种快速而简单的方法来轻松快速地学习 Linux 命令,那么这些替代方案值得尝试。 现在,你可能正在考虑 —— 如何为 Linux 命令创建自己的 man 式的帮助页面? 这时 “Um” 就派上用场了。 Um 是一个命令行实用程序,可以用于轻松创建和维护包含你到目前为止所了解的所有命令的 man 页面。通过创建自己的手册页,你可以在手册页中避免大量不必要的细节,并且只包含你需要记住的内容。 如果你想创建自己的一套 man 式的页面,“Um” 也能为你提供帮助。 在这个简短的教程中,我们将学习如何安装 “Um” 命令以及如何创建自己的 man 手册页。安装 UmUm 适用于 Linux 和Mac OS。 目前,它只能在 Linux 系统中使用 Linuxbrew 软件包管理器来进行安装。 如果你尚未安装 Linuxbrew,请参考以下链接:<a href="https://www.ostechnix.com/linuxbrew-common-package-manager-linux-mac-os-x/">Linuxbrew:一个用于 Linux 和 MacOS 的通用包管理器</a>安装 Linuxbrew 后,运行以下命令安装 Um 实用程序。<pre class="prettyprint linenums">$ brew install sinclairtarget/wst/um</pre>如果你会看到类似下面的输出,恭喜你! Um 已经安装好并且可以使用了。<pre class="prettyprint linenums">[...]==> Installing sinclairtarget/wst/um==> Downloading https://github.com/sinclairtarget/um/archive/4.0.0.tar.gz==> Downloading from https://codeload.github.com/sinclairtarget/um/tar.gz/4.0.0-=#=# # #==> Downloading https://rubygems.org/gems/kramdown…
Linux vs Mac:Linux 比 Mac 好的 7 个原因
如果你已经在用 Mac 或者打算买一台 Mac 电脑,我们建议你仔细考虑一下,看看是改为使用 Linux 还是继续使用 Mac。Media
via https://linux.cn/article-10131-1.html
如果你已经在用 Mac 或者打算买一台 Mac 电脑,我们建议你仔细考虑一下,看看是改为使用 Linux 还是继续使用 Mac。Media
via https://linux.cn/article-10131-1.html
Linux vs Mac:Linux 比 Mac 好的 7 个原因
最近我们谈论了一些<a href="https://itsfoss.com/linux-better-than-windows/">为什么 Linux 比 Windows 好</a>的原因。毫无疑问,Linux 是个非常优秀的平台。但是它和其它操作系统一样也会有缺点。对于某些专门的领域,像是游戏,Windows 当然更好。而对于视频编辑等任务,Mac 系统可能更为方便。这一切都取决于你的偏好,以及你想用你的系统做些什么。在这篇文章中,我们将会介绍一些 Linux 相对于 Mac 更好的一些地方。如果你已经在用 Mac 或者打算买一台 Mac 电脑,我们建议你仔细考虑一下,看看是改为使用 Linux 还是继续使用 Mac。Linux 比 Mac 好的 7 个原因<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201810/19/223947s1dfxs9ff603e3q3.png">Linux vs Mac:为什么 Linux 更好</a>Linux 和 macOS 都是类 Unix 操作系统,并且都支持 Unix 命令、bash 和其它 shell,相比于 Windows,它们所支持的应用和游戏比较少。但也就是这点比较相似。平面设计师和视频剪辑师更加倾向于使用 Mac 系统,而 Linux 更加适合做开发、系统管理、运维的工程师。那要不要使用 Linux 呢,为什么要选择 Linux 呢?下面是根据实际经验和理性分析给出的一些建议。1、价格<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201810/19/223947oqustt3npkepqfsf.jpg">Linux vs Mac:为什么 Linux 更好</a>假设你只是需要浏览文件、看电影、下载图片、写文档、制作报表或者做一些类似的工作,并且你想要一个更加安全的系统。那在这种情况下,你觉得花费几百美金买个系统完成这项工作,或者花费更多直接买个 MacBook 更…
最近我们谈论了一些<a href="https://itsfoss.com/linux-better-than-windows/">为什么 Linux 比 Windows 好</a>的原因。毫无疑问,Linux 是个非常优秀的平台。但是它和其它操作系统一样也会有缺点。对于某些专门的领域,像是游戏,Windows 当然更好。而对于视频编辑等任务,Mac 系统可能更为方便。这一切都取决于你的偏好,以及你想用你的系统做些什么。在这篇文章中,我们将会介绍一些 Linux 相对于 Mac 更好的一些地方。如果你已经在用 Mac 或者打算买一台 Mac 电脑,我们建议你仔细考虑一下,看看是改为使用 Linux 还是继续使用 Mac。Linux 比 Mac 好的 7 个原因<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201810/19/223947s1dfxs9ff603e3q3.png">Linux vs Mac:为什么 Linux 更好</a>Linux 和 macOS 都是类 Unix 操作系统,并且都支持 Unix 命令、bash 和其它 shell,相比于 Windows,它们所支持的应用和游戏比较少。但也就是这点比较相似。平面设计师和视频剪辑师更加倾向于使用 Mac 系统,而 Linux 更加适合做开发、系统管理、运维的工程师。那要不要使用 Linux 呢,为什么要选择 Linux 呢?下面是根据实际经验和理性分析给出的一些建议。1、价格<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201810/19/223947oqustt3npkepqfsf.jpg">Linux vs Mac:为什么 Linux 更好</a>假设你只是需要浏览文件、看电影、下载图片、写文档、制作报表或者做一些类似的工作,并且你想要一个更加安全的系统。那在这种情况下,你觉得花费几百美金买个系统完成这项工作,或者花费更多直接买个 MacBook 更…
在 Linux 手册页中查看整个 Arch Linux Wiki
就跟名字说的一样,它可以让你在命令行查看 Arch Wiki,但是无需联网。它可以以手册页的形式为你显示来自 Arch Wiki 的任何文章。Media
via https://linux.cn/article-10132-1.html
就跟名字说的一样,它可以让你在命令行查看 Arch Wiki,但是无需联网。它可以以手册页的形式为你显示来自 Arch Wiki 的任何文章。Media
via https://linux.cn/article-10132-1.html
在 Linux 手册页中查看整个 Arch Linux Wiki
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201810/19/232304eyx755vrg8x8zcsx.jpg">Media</a>不久之前,我写了篇关于一个名叫 <a href="https://www.ostechnix.com/search-arch-wiki-website-commandline/">arch-wiki-cli</a> 的命令行脚本的文章,使用它可以在终端命令行中查看 Arch Linux Wiki。使用这个脚本,你可以很轻松的用你喜欢的文本浏览器查看整个 Arch Wiki 网站。显然,使用这个脚本需要你有网络连接。我今天偶然发现了一个名为 Arch-wiki-man 的程序,与其有着相同的功能。就跟名字说的一样,它可以让你在命令行查看 Arch Wiki,但是无需联网。它可以以手册页的形式为你显示来自 Arch Wiki 的任何文章。它会下载整个 Arch Wiki 到本地,并每两天自动推送一次。因此,你的系统上总能有一份 Arch Wiki 最新的副本。安装 Arch-wiki-manArch-wiki-man 在 <a href="https://aur.archlinux.org/packages/arch-wiki-man/">AUR</a> 中可用,所以你可以通过类似<a href="https://www.ostechnix.com/yay-found-yet-another-reliable-aur-helper/">Yay</a> 的 AUR 帮助程序安装它。<pre class="prettyprint linenums">$ yay -S arch-wiki-man</pre>另外,它也可以使用 NPM 安装。首先确保你已经<a href="https://www.ostechnix.com/install-node-js-linux/">安装了 NoodJS</a>,然后使用以下命令安装它。<pre class="prettyprint linenums">$ npm install -g arch-wiki-man</pre>以手册页的形式查看整个 Arch WikiArch-wiki-man 的典型语法如下:<pre class="prettyprint linenums">$ awman <search-query></pre>下面看一些具体的例子:搜索一个或多个匹配项只需要下面的命令,就可以搜索 <a href="https://www.ostechnix.com/install-arch-linux-latest-version/">Arch Linux 安装指南</a>。<pre class="prettyprint linenums">$ awman Installation guide</pre>上面的命令将会从 Arch Wiki 中搜索所有包含 “Installation guide” 的条目。如果对于给出的搜索条目有很多的匹配项,将会展示为一个…
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201810/19/232304eyx755vrg8x8zcsx.jpg">Media</a>不久之前,我写了篇关于一个名叫 <a href="https://www.ostechnix.com/search-arch-wiki-website-commandline/">arch-wiki-cli</a> 的命令行脚本的文章,使用它可以在终端命令行中查看 Arch Linux Wiki。使用这个脚本,你可以很轻松的用你喜欢的文本浏览器查看整个 Arch Wiki 网站。显然,使用这个脚本需要你有网络连接。我今天偶然发现了一个名为 Arch-wiki-man 的程序,与其有着相同的功能。就跟名字说的一样,它可以让你在命令行查看 Arch Wiki,但是无需联网。它可以以手册页的形式为你显示来自 Arch Wiki 的任何文章。它会下载整个 Arch Wiki 到本地,并每两天自动推送一次。因此,你的系统上总能有一份 Arch Wiki 最新的副本。安装 Arch-wiki-manArch-wiki-man 在 <a href="https://aur.archlinux.org/packages/arch-wiki-man/">AUR</a> 中可用,所以你可以通过类似<a href="https://www.ostechnix.com/yay-found-yet-another-reliable-aur-helper/">Yay</a> 的 AUR 帮助程序安装它。<pre class="prettyprint linenums">$ yay -S arch-wiki-man</pre>另外,它也可以使用 NPM 安装。首先确保你已经<a href="https://www.ostechnix.com/install-node-js-linux/">安装了 NoodJS</a>,然后使用以下命令安装它。<pre class="prettyprint linenums">$ npm install -g arch-wiki-man</pre>以手册页的形式查看整个 Arch WikiArch-wiki-man 的典型语法如下:<pre class="prettyprint linenums">$ awman <search-query></pre>下面看一些具体的例子:搜索一个或多个匹配项只需要下面的命令,就可以搜索 <a href="https://www.ostechnix.com/install-arch-linux-latest-version/">Arch Linux 安装指南</a>。<pre class="prettyprint linenums">$ awman Installation guide</pre>上面的命令将会从 Arch Wiki 中搜索所有包含 “Installation guide” 的条目。如果对于给出的搜索条目有很多的匹配项,将会展示为一个…
一个简单而美观的跨平台播客应用程序
Linux 桌面版上有很多播客播放器,但是如果你想要一些视觉上美观、有顺滑的动画并且可以在每个平台上运行的东西,那就并没有很多替代品可以替代 CPod 了。Media
via https://linux.cn/article-10133-1.html
Linux 桌面版上有很多播客播放器,但是如果你想要一些视觉上美观、有顺滑的动画并且可以在每个平台上运行的东西,那就并没有很多替代品可以替代 CPod 了。Media
via https://linux.cn/article-10133-1.html
一个简单而美观的跨平台播客应用程序
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201810/19/234010rpsfnsn7nmpos16r.png">Media</a>播客在过去几年中变得非常流行。 播客就是所谓的“信息娱乐 infotainment”,它们通常是轻松的,但也会为你提供有价值的信息。 播客在过去几年中已经非常火爆了,如果你喜欢某些东西,就很可能有个相关的播客。 Linux 桌面版上有很多播客播放器,但是如果你想要一些视觉上美观、有顺滑的动画并且可以在每个平台上运行的东西,那就并没有很多替代品可以替代 CPod 了。 CPod(以前称为 Cumulonimbus)是一个开源而成熟的播客应用程序,适用于 Linux、MacOS 和 Windows。CPod 运行在一个名为 Electron 的东西上 —— 这个工具允许开发人员构建跨平台(例如 Windows、MacOS 和 Linux)的桌面图形化应用程序。 在本简要指南中,我们将讨论如何在 Linux 中安装和使用 CPod 播客应用程序。安装 CPod转到 CPod 的<a href="https://github.com/z-------------/CPod/releases">发布页面</a>。 下载并安装所选平台的二进制文件。 如果你使用 Ubuntu / Debian,你只需从发布页面下载并安装 .deb 文件,如下所示。<pre class="prettyprint linenums">$ wget https://github.com/z-------------/CPod/releases/download/v1.25.7/CPod_1.25.7_amd64.deb$ sudo apt update$ sudo apt install gdebi$ sudo gdebi CPod_1.25.7_amd64.deb</pre>如果你使用其他发行版,你可能需要使用发布页面中的 AppImage。从发布页面下载 AppImage 文件。打开终端,然后转到存储 AppImage 文件的目录。 更改权限以允许执行:<pre class="prettyprint linenums">$ chmod +x CPod-1.25.7-x86_64.AppImage</pre>执行 AppImage 文件:<pre class="prettyprint linenums">$ ./CPod-1.25.7-x86_64.AppImage</pre>你将看到一个对话框询问是否将应用程序ߎ…
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201810/19/234010rpsfnsn7nmpos16r.png">Media</a>播客在过去几年中变得非常流行。 播客就是所谓的“信息娱乐 infotainment”,它们通常是轻松的,但也会为你提供有价值的信息。 播客在过去几年中已经非常火爆了,如果你喜欢某些东西,就很可能有个相关的播客。 Linux 桌面版上有很多播客播放器,但是如果你想要一些视觉上美观、有顺滑的动画并且可以在每个平台上运行的东西,那就并没有很多替代品可以替代 CPod 了。 CPod(以前称为 Cumulonimbus)是一个开源而成熟的播客应用程序,适用于 Linux、MacOS 和 Windows。CPod 运行在一个名为 Electron 的东西上 —— 这个工具允许开发人员构建跨平台(例如 Windows、MacOS 和 Linux)的桌面图形化应用程序。 在本简要指南中,我们将讨论如何在 Linux 中安装和使用 CPod 播客应用程序。安装 CPod转到 CPod 的<a href="https://github.com/z-------------/CPod/releases">发布页面</a>。 下载并安装所选平台的二进制文件。 如果你使用 Ubuntu / Debian,你只需从发布页面下载并安装 .deb 文件,如下所示。<pre class="prettyprint linenums">$ wget https://github.com/z-------------/CPod/releases/download/v1.25.7/CPod_1.25.7_amd64.deb$ sudo apt update$ sudo apt install gdebi$ sudo gdebi CPod_1.25.7_amd64.deb</pre>如果你使用其他发行版,你可能需要使用发布页面中的 AppImage。从发布页面下载 AppImage 文件。打开终端,然后转到存储 AppImage 文件的目录。 更改权限以允许执行:<pre class="prettyprint linenums">$ chmod +x CPod-1.25.7-x86_64.AppImage</pre>执行 AppImage 文件:<pre class="prettyprint linenums">$ ./CPod-1.25.7-x86_64.AppImage</pre>你将看到一个对话框询问是否将应用程序ߎ…
介绍 Fedora 上的 Swift
Swift 是一种使用现代方法构建安全性、性能和软件设计模式的通用编程语言。它旨在成为各种编程项目的最佳语言,从系统编程到桌面应用程序,以及扩展到云服务。Media
via https://linux.cn/article-10134-1.html
Swift 是一种使用现代方法构建安全性、性能和软件设计模式的通用编程语言。它旨在成为各种编程项目的最佳语言,从系统编程到桌面应用程序,以及扩展到云服务。Media
via https://linux.cn/article-10134-1.html
介绍 Fedora 上的 Swift
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201810/20/093525ccnxl3l5zxqwwpsj.jpg">Media</a>Swift 是一种使用现代方法构建安全性、性能和软件设计模式的通用编程语言。它旨在成为各种编程项目的最佳语言,从系统编程到桌面应用程序,以及扩展到云服务。继续阅读了解它以及如何在 Fedora 中尝试它。安全、快速、富有表现力与许多现代编程语言一样,Swift 被设计为比基于 C 的语言更安全。例如,变量总是在使用之前初始化。检查数组和整数是否溢出。内存自动管理。Swift 将意图放在语法中。要声明变量,请使用 var 关键字。要声明常量,请使用 let。Swift 还保证对象永远不会是 nil。实际上,尝试使用已知为 nil 的对象将导致编译时错误。当使用 nil 值时,它支持一种称为 <strong>optional</strong> 的机制。optional 可能包含 nil,但使用 ? 运算符可以安全地解包。更多的功能包括:与函数指针统一的闭包元组和多个返回值泛型对范围或集合进行快速而简洁的迭代支持方法、扩展和协议的结构体函数式编程模式,例如 map 和 filter内置强大的错误处理拥有 do、guard、defer 和 repeat 关键字的高级控制流尝试 SwiftSwift 在 Fedora 28 中可用,包名为 <strong>swift-lang</strong>。安装完成后,运行 swift 并启动 REPL 控制台。<pre class="prettyprint linenums">$ swiftWelcome to Swift version 4.2 (swift-4.2-RELEASE). Type :help for assistance. 1> let greeting="Hello world!"greeting: String = "Hello world!" 2> print(greeting)Hello world! 3> greeting = "Hello universe!"error: repl.swift:3:10: error: cannot assign to value: 'greeting' is a 'let' constantgreeting = "Hello universe!"~~~~~~~~ ^ 3></pre>Swift 有一个不断发展的社区,特别的,有一个<a href="https://swift.org/server/">工作组</a>致力&#…
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201810/20/093525ccnxl3l5zxqwwpsj.jpg">Media</a>Swift 是一种使用现代方法构建安全性、性能和软件设计模式的通用编程语言。它旨在成为各种编程项目的最佳语言,从系统编程到桌面应用程序,以及扩展到云服务。继续阅读了解它以及如何在 Fedora 中尝试它。安全、快速、富有表现力与许多现代编程语言一样,Swift 被设计为比基于 C 的语言更安全。例如,变量总是在使用之前初始化。检查数组和整数是否溢出。内存自动管理。Swift 将意图放在语法中。要声明变量,请使用 var 关键字。要声明常量,请使用 let。Swift 还保证对象永远不会是 nil。实际上,尝试使用已知为 nil 的对象将导致编译时错误。当使用 nil 值时,它支持一种称为 <strong>optional</strong> 的机制。optional 可能包含 nil,但使用 ? 运算符可以安全地解包。更多的功能包括:与函数指针统一的闭包元组和多个返回值泛型对范围或集合进行快速而简洁的迭代支持方法、扩展和协议的结构体函数式编程模式,例如 map 和 filter内置强大的错误处理拥有 do、guard、defer 和 repeat 关键字的高级控制流尝试 SwiftSwift 在 Fedora 28 中可用,包名为 <strong>swift-lang</strong>。安装完成后,运行 swift 并启动 REPL 控制台。<pre class="prettyprint linenums">$ swiftWelcome to Swift version 4.2 (swift-4.2-RELEASE). Type :help for assistance. 1> let greeting="Hello world!"greeting: String = "Hello world!" 2> print(greeting)Hello world! 3> greeting = "Hello universe!"error: repl.swift:3:10: error: cannot assign to value: 'greeting' is a 'let' constantgreeting = "Hello universe!"~~~~~~~~ ^ 3></pre>Swift 有一个不断发展的社区,特别的,有一个<a href="https://swift.org/server/">工作组</a>致力&#…
2018 中国开源年度报告:问卷篇
鉴于以上”由隐而显“的各种问题,开源社组织了《2018 开源年度报告》调查,从多种纬度、多种方式、多种协作来尝试靠近上述问题的答案。Media
via https://linux.cn/article-10135-1.html
鉴于以上”由隐而显“的各种问题,开源社组织了《2018 开源年度报告》调查,从多种纬度、多种方式、多种协作来尝试靠近上述问题的答案。Media
via https://linux.cn/article-10135-1.html
2018 中国开源年度报告:问卷篇
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201810/20/232926el43oa2zbmpkkz43.png">enter image description here</a>引言<strong>软件的世界在悄然发生变化</strong>当著名的马克安德森撰写《软件正在吞噬世界》的文章的时候,可能没有想到,在 6 年之后,他就需要加上一个定语:开源软件正在吞噬世界!面对人工智能的伦理问题、软件产能过剩的问题、软件转型为服务模式的问题、云计算已经像电力一样成为这个世界默认的基础设施、以及面向海量数据的处理问题。。。围绕这些问题解决的核心原则只有一个:Open Source!<strong>由隐而显</strong>开源 20 岁了,它的内涵和外延正在扩大,不仅仅是一个开源的代码项目,也不再仅仅是一个社区,而是正变得日益复杂,研究的人也越来越多,当然这是由于参与到开源中的人和企业越来越多了。以下不妨列举一番:<strong>开源是一种社交现象</strong>2018 年,有一个消息堪称开源界的重磅炸弹!这就是微软以 75 亿美元的价格收购了 GitHub,要知道在 1999 年,人们仍然不把开源当做一回事,<a href="http://timreview.ca/sites/default/files/article_PDF/Suehle_TIMReview_January2012_0.pdf%20/t%20_blank">Bill Gates 在宣传他的书时</a>,曾如此评价 Linux 的:“确实我们承认在学生和爱好者当中我们不如 Linux,但是我们从多个角度考察过,并不认为它能在商业市场上有何作为。”开源不止于技术,隐藏在背后的是开发者、工程师们之间的协作与交流,以及彼此的默契与褒奖。而 GitHub 的&…
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201810/20/232926el43oa2zbmpkkz43.png">enter image description here</a>引言<strong>软件的世界在悄然发生变化</strong>当著名的马克安德森撰写《软件正在吞噬世界》的文章的时候,可能没有想到,在 6 年之后,他就需要加上一个定语:开源软件正在吞噬世界!面对人工智能的伦理问题、软件产能过剩的问题、软件转型为服务模式的问题、云计算已经像电力一样成为这个世界默认的基础设施、以及面向海量数据的处理问题。。。围绕这些问题解决的核心原则只有一个:Open Source!<strong>由隐而显</strong>开源 20 岁了,它的内涵和外延正在扩大,不仅仅是一个开源的代码项目,也不再仅仅是一个社区,而是正变得日益复杂,研究的人也越来越多,当然这是由于参与到开源中的人和企业越来越多了。以下不妨列举一番:<strong>开源是一种社交现象</strong>2018 年,有一个消息堪称开源界的重磅炸弹!这就是微软以 75 亿美元的价格收购了 GitHub,要知道在 1999 年,人们仍然不把开源当做一回事,<a href="http://timreview.ca/sites/default/files/article_PDF/Suehle_TIMReview_January2012_0.pdf%20/t%20_blank">Bill Gates 在宣传他的书时</a>,曾如此评价 Linux 的:“确实我们承认在学生和爱好者当中我们不如 Linux,但是我们从多个角度考察过,并不认为它能在商业市场上有何作为。”开源不止于技术,隐藏在背后的是开发者、工程师们之间的协作与交流,以及彼此的默契与褒奖。而 GitHub 的&…
命令行小技巧:读取文件的不同方式
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201810/21/000526kk3y3iwphyhkocw4.jpg">Media</a>作为图形操作系统,Fedora 的使用是令人愉快的。你可以轻松地点击完成任何任务。但你可能已经看到了,在底层还有一个强大的命令行。想要在 shell 下体验,只需要在 Fedora 系统中打开你的终端应用。这篇文章是向你展示常见的命令行使用方法的系列文章之一。在这部分,你将学习如何以不同的方式读取文件,如果你在系统中打开一个终端完成一些工作,你就有可能需要读取一两个文件。一应俱全的大餐对命令行终端的用户来说, cat 命令众所周知。 当你 cat 一个文件,你很容易的把整个文件内容展示在你的屏幕上。而真正发生在底层的是文件一次读取一行,然后一行一行写入屏幕。假设你有一个文件,叫做 myfile, 这个文件每行只有一个单词。为了简单起见,每行的单词就是这行的行号,就像这样:<pre class="prettyprint linenums">onetwothreefourfive</pre>所以如果你 cat 这个文件,你就会看到如下输出:<pre class="prettyprint linenums">$ cat myfileonetwothreefourfive</pre>并没有太惊喜,不是吗? 但是有个有趣的转折,只要使用 tac 命令,你可以从后往前 cat 这个文件。(请注意, Fedora 对这种有争议的幽默不承担任何责任!)<pre class="prettyprint linenums">$ tac myfilefivefourthreetwoone</pre>cat 命令允许你以不同的方式装饰输出,比如,你可以输出行号:<pre class="prettyprint linenums">$ cat -n myfile 1 one 2 two 3 three 4 four 5 five</pre>还有其他选项可以显示特殊字符和其ߢ…
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201810/21/000526kk3y3iwphyhkocw4.jpg">Media</a>作为图形操作系统,Fedora 的使用是令人愉快的。你可以轻松地点击完成任何任务。但你可能已经看到了,在底层还有一个强大的命令行。想要在 shell 下体验,只需要在 Fedora 系统中打开你的终端应用。这篇文章是向你展示常见的命令行使用方法的系列文章之一。在这部分,你将学习如何以不同的方式读取文件,如果你在系统中打开一个终端完成一些工作,你就有可能需要读取一两个文件。一应俱全的大餐对命令行终端的用户来说, cat 命令众所周知。 当你 cat 一个文件,你很容易的把整个文件内容展示在你的屏幕上。而真正发生在底层的是文件一次读取一行,然后一行一行写入屏幕。假设你有一个文件,叫做 myfile, 这个文件每行只有一个单词。为了简单起见,每行的单词就是这行的行号,就像这样:<pre class="prettyprint linenums">onetwothreefourfive</pre>所以如果你 cat 这个文件,你就会看到如下输出:<pre class="prettyprint linenums">$ cat myfileonetwothreefourfive</pre>并没有太惊喜,不是吗? 但是有个有趣的转折,只要使用 tac 命令,你可以从后往前 cat 这个文件。(请注意, Fedora 对这种有争议的幽默不承担任何责任!)<pre class="prettyprint linenums">$ tac myfilefivefourthreetwoone</pre>cat 命令允许你以不同的方式装饰输出,比如,你可以输出行号:<pre class="prettyprint linenums">$ cat -n myfile 1 one 2 two 3 three 4 four 5 five</pre>还有其他选项可以显示特殊字符和其ߢ…
如何在双系统引导下替换 Linux 发行版
在双系统引导的状态下,你可以将已安装的 Linux 发行版替换为另一个发行版,同时还可以保留原本的个人数据。Media
via https://linux.cn/article-10137-1.html
在双系统引导的状态下,你可以将已安装的 Linux 发行版替换为另一个发行版,同时还可以保留原本的个人数据。Media
via https://linux.cn/article-10137-1.html
如何在双系统引导下替换 Linux 发行版
在双系统引导的状态下,你可以将已安装的 Linux 发行版替换为另一个发行版,同时还可以保留原本的个人数据。<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201810/21/002240jg0d00rl4devsllr.png">How to Replace One Linux Distribution With Another From Dual Boot</a>假设你的电脑上已经<a href="https://itsfoss.com/install-ubuntu-1404-dual-boot-mode-windows-8-81-uefi/">以双系统的形式安装了 Ubuntu 和 Windows</a>,但经过<a href="https://itsfoss.com/linux-mint-vs-ubuntu/">将 Linux Mint 与 Ubuntu 比较</a>之后,你又觉得 <a href="https://www.linuxmint.com/">Linux Mint</a> 会更适合自己的时候,你会怎样做?又该如何在<a href="https://itsfoss.com/uninstall-ubuntu-linux-windows-dual-boot/">删除 Ubuntu</a> 的同时<a href="https://itsfoss.com/guide-install-linux-mint-16-dual-boot-windows/">在双系统中安装 Mint</a> 呢?你或许觉得应该首先从在双系统中卸载 <a href="https://www.ubuntu.com/">Ubuntu</a>,然后使用 Linux Mint 重新安装成双系统。但实际上并不需要这么麻烦。如果你已经在双系统引导中安装了一种 Linux 发行版,就可以轻松替换成另一个发行版了,而且也不必卸载已有的 Linux 发行版,只需要删除其所在的分区,然后在腾出的磁盘空间上安装另一个 Linux 发行版就可以了。与此同时,更换 Linux 发行版后,仍然会保留原本 home 目录中包含所有文件。下面就来详细介绍一下。在双系统引导中替换 Linux 发行版<a href="https://youtu.be/ptF2RUehbKs">https://youtu.be/ptF2RUehbKs</a>这是我的演示范例。我使用双系统引导同时安装了 Windows 10 和 Linux Mint 19,然后我会把 Linux Mint 19 替换成 Elementary OS 5,同时在替换后保留我的个人文件(包括音乐、图片、视频和 home 目录中的文件)。你需要做好以下这些准备:使用 Linux 和 Windows…
在双系统引导的状态下,你可以将已安装的 Linux 发行版替换为另一个发行版,同时还可以保留原本的个人数据。<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201810/21/002240jg0d00rl4devsllr.png">How to Replace One Linux Distribution With Another From Dual Boot</a>假设你的电脑上已经<a href="https://itsfoss.com/install-ubuntu-1404-dual-boot-mode-windows-8-81-uefi/">以双系统的形式安装了 Ubuntu 和 Windows</a>,但经过<a href="https://itsfoss.com/linux-mint-vs-ubuntu/">将 Linux Mint 与 Ubuntu 比较</a>之后,你又觉得 <a href="https://www.linuxmint.com/">Linux Mint</a> 会更适合自己的时候,你会怎样做?又该如何在<a href="https://itsfoss.com/uninstall-ubuntu-linux-windows-dual-boot/">删除 Ubuntu</a> 的同时<a href="https://itsfoss.com/guide-install-linux-mint-16-dual-boot-windows/">在双系统中安装 Mint</a> 呢?你或许觉得应该首先从在双系统中卸载 <a href="https://www.ubuntu.com/">Ubuntu</a>,然后使用 Linux Mint 重新安装成双系统。但实际上并不需要这么麻烦。如果你已经在双系统引导中安装了一种 Linux 发行版,就可以轻松替换成另一个发行版了,而且也不必卸载已有的 Linux 发行版,只需要删除其所在的分区,然后在腾出的磁盘空间上安装另一个 Linux 发行版就可以了。与此同时,更换 Linux 发行版后,仍然会保留原本 home 目录中包含所有文件。下面就来详细介绍一下。在双系统引导中替换 Linux 发行版<a href="https://youtu.be/ptF2RUehbKs">https://youtu.be/ptF2RUehbKs</a>这是我的演示范例。我使用双系统引导同时安装了 Windows 10 和 Linux Mint 19,然后我会把 Linux Mint 19 替换成 Elementary OS 5,同时在替换后保留我的个人文件(包括音乐、图片、视频和 home 目录中的文件)。你需要做好以下这些准备:使用 Linux 和 Windows…
2018 中国开源年度报告:数据篇
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201810/21/072354j88kv72aeadge1ge.png">Media</a>第二篇 数据篇<strong>2.1 指南针篇</strong>指南针团队使用网络爬虫与 GitHub 数据 API 获取开源代码库的数据如原代码、项目信息、项目的静态信息如项目名称、起始日期等、与动态信息如fork数、客户给与的星数等众多项目相关的信息储存在本地数据结构中。第一阶段是处理原始数据与结构化的单元,生成如排序、标签等总和数据,如此可以透过如排名、统计等信息的提供。使用机器学习、自然语言处理、数据分析等技术,综合所有数据提供如分类、搜索、推荐、评比等应用服务。另外运用图像数据库的关联技术,对于高维度智能的连接和查询、以交互方式的可视化的提供更复杂的关联呈现。<strong>开源@中国</strong><a href="https://dn-linuxcn.qbox.me/data/attachment/album/201810/21/072354bftm39m0hn39honh.png">Media</a>如同世界各地的开发人员和各种企业,中国也经历了对于开源的无感、抵制、怀疑、观望、尝试、接受、以至于认可到支持的过程。中国在开源社区的贡献与影响力,无论在数量与品质、深度与广度都逐年的扩大与攀升。Google 以创新的形象深植在开发人员的心中,对开源的贡献例如在大数据(Hadoop、HDFS 等)、深度学习(如 TensorFlow)都是有目共睹。Microsoft 作为开源的后起之秀,投入的资源和近期的声势都开始受到认可。在 2018 年收购 GitHub 也为其投入与支持开源的决心更为凸&…
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201810/21/072354j88kv72aeadge1ge.png">Media</a>第二篇 数据篇<strong>2.1 指南针篇</strong>指南针团队使用网络爬虫与 GitHub 数据 API 获取开源代码库的数据如原代码、项目信息、项目的静态信息如项目名称、起始日期等、与动态信息如fork数、客户给与的星数等众多项目相关的信息储存在本地数据结构中。第一阶段是处理原始数据与结构化的单元,生成如排序、标签等总和数据,如此可以透过如排名、统计等信息的提供。使用机器学习、自然语言处理、数据分析等技术,综合所有数据提供如分类、搜索、推荐、评比等应用服务。另外运用图像数据库的关联技术,对于高维度智能的连接和查询、以交互方式的可视化的提供更复杂的关联呈现。<strong>开源@中国</strong><a href="https://dn-linuxcn.qbox.me/data/attachment/album/201810/21/072354bftm39m0hn39honh.png">Media</a>如同世界各地的开发人员和各种企业,中国也经历了对于开源的无感、抵制、怀疑、观望、尝试、接受、以至于认可到支持的过程。中国在开源社区的贡献与影响力,无论在数量与品质、深度与广度都逐年的扩大与攀升。Google 以创新的形象深植在开发人员的心中,对开源的贡献例如在大数据(Hadoop、HDFS 等)、深度学习(如 TensorFlow)都是有目共睹。Microsoft 作为开源的后起之秀,投入的资源和近期的声势都开始受到认可。在 2018 年收购 GitHub 也为其投入与支持开源的决心更为凸&…
在 Linux 命令行中使用 ls 列出文件的技巧
学习一些 Linux <code>ls</code> 命令最有用的变化。<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201810/22/082802j7mkmqx444q44n67.png">Media</a>我在 Linux 中最先学到的命令之一就是 <code>ls</code>。了解系统中文件所在目录中的内容非常重要。能够查看和修改不仅仅是一些文件还有所有文件也很重要。我的第一个 Linux 备忘录是<a href="http://hackerspace.cs.rutgers.edu/library/General/One_Page_Linux_Manual.pdf">单页 Linux 手册</a>,它于 1999 年发布,成了我的首选参考资料。当我开始探索 Linux 时,我把它贴在桌子上并经常参考它。它在第一页第一列的底部介绍了 <code>ls -l</code> 列出文件的命令。之后,我将学习这个最基本命令的其它迭代。通过 <code>ls</code> 命令,我开始了解 Linux 文件权限的复杂性,以及哪些是我的文件,哪些需要 root 或者 sudo 权限来修改。随着时间的推移,我习惯了使用命令行,虽然我仍然使用 <code>ls -l</code> 来查找目录中的文件,但我经常使用 <code>ls -al</code>,这样我就可以看到可能需要更改的隐藏文件,比如那些配置文件。根据 Eric Fischer 在 <a href="http://www.tldp.org/LDP/LG/issue48/fischer.html">Linux 文档项目</a>中关于 <code>ls</code> 命令的文章,该命令的起源可以追溯到 1961 年 MIT 的相容分时系统Compatible Time-Sharing System(CTSS)上的 <code>listf</code> 命令。当 CTSS 被 <a href="https://en.wikipedia.org/wiki/Multics">Multics</a> 代替时,命令变为 <code>list</code>,并有像 <code>list -all</code> 的开关。根据<a href="https://en.wikipedia.org/wiki/Ls">维基百科</a>,<code>ls</code> 出现在 AT&T Unix 的原始版本中。我们今天在 Linux 系统上使用的 <code>ls</code> 命令来自 <a href="http://www.gnu.org/s/coreutils/">GNU Core Utilities</a>。大多数时候,我只使&#…
学习一些 Linux <code>ls</code> 命令最有用的变化。<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201810/22/082802j7mkmqx444q44n67.png">Media</a>我在 Linux 中最先学到的命令之一就是 <code>ls</code>。了解系统中文件所在目录中的内容非常重要。能够查看和修改不仅仅是一些文件还有所有文件也很重要。我的第一个 Linux 备忘录是<a href="http://hackerspace.cs.rutgers.edu/library/General/One_Page_Linux_Manual.pdf">单页 Linux 手册</a>,它于 1999 年发布,成了我的首选参考资料。当我开始探索 Linux 时,我把它贴在桌子上并经常参考它。它在第一页第一列的底部介绍了 <code>ls -l</code> 列出文件的命令。之后,我将学习这个最基本命令的其它迭代。通过 <code>ls</code> 命令,我开始了解 Linux 文件权限的复杂性,以及哪些是我的文件,哪些需要 root 或者 sudo 权限来修改。随着时间的推移,我习惯了使用命令行,虽然我仍然使用 <code>ls -l</code> 来查找目录中的文件,但我经常使用 <code>ls -al</code>,这样我就可以看到可能需要更改的隐藏文件,比如那些配置文件。根据 Eric Fischer 在 <a href="http://www.tldp.org/LDP/LG/issue48/fischer.html">Linux 文档项目</a>中关于 <code>ls</code> 命令的文章,该命令的起源可以追溯到 1961 年 MIT 的相容分时系统Compatible Time-Sharing System(CTSS)上的 <code>listf</code> 命令。当 CTSS 被 <a href="https://en.wikipedia.org/wiki/Multics">Multics</a> 代替时,命令变为 <code>list</code>,并有像 <code>list -all</code> 的开关。根据<a href="https://en.wikipedia.org/wiki/Ls">维基百科</a>,<code>ls</code> 出现在 AT&T Unix 的原始版本中。我们今天在 Linux 系统上使用的 <code>ls</code> 命令来自 <a href="http://www.gnu.org/s/coreutils/">GNU Core Utilities</a>。大多数时候,我只使&#…