在 Linux 上操作目录

在 Linux 上操作目录

让我们继续学习一下 Linux 文件系统的树形结构,并展示一下如何在其中创建你的目录。
使用 top 命令了解 Fedora 的内存使用情况

使用 top 命令了解 Fedora 的内存使用情况

如果你使用过 top 命令来查看 Fedora 系统中的内存使用情况,你可能会惊讶,看起来消耗的数量比系统可用的内存更多。下面会详细介绍内存使用情况以及如何理解这些数据。
何谓开源编程?

何谓开源编程?

开源就是丢一些代码到 GitHub 上。了解一下它是什么,以及不是什么?
Git 使用简介

Git 使用简介

我将向你介绍让 Git 的启动、运行,并和 GitHub 一起使用的基础知识。
GNU GPL 许可证常见问题解答(七)

GNU GPL 许可证常见问题解答(七)

这篇常见问题解答澄清了在使用 GNU 许可证中遇到许多问题,对于企业和软件开发者在实际应用许可证和解决许可证问题时具有很强的实践指导意义。
区块链简史

区块链简史

很久以前,在一个遥远的星系……一份题为“比特币:点对点电子现金系统”的神秘白皮书以笔名中本聪发布。
Flash Player 的两种开源替代方案

Flash Player 的两种开源替代方案

Adobe 将于 2020 年终止对 Flash 媒体播放器的支持,但仍有很多人们希望访问的 Flash 视频。这里有两个开源的替代品或许可以帮到你。
i3 窗口管理器入门

i3 窗口管理器入门

本篇文章会介绍如何在 Fedora 系统中,安装、配置、使用 i3 瓦片式桌面管理器。
如何在 Linux 上检查一个软件包的详细信息

如何在 Linux 上检查一个软件包的详细信息

这篇短文将用尽可能简单的方式帮你从随包自带的总结和描述中了解该包的用法。按你所使用的 Linux 发行版的不同,运行下面相应的命令,你能得到你所使用的发行版下的包的详细信息。
到底什么是区块链

到底什么是区块链

虽然区块链通常被认为是计算机技术的进步,但它更容易被理解为会计的进步。
如何在 Ubuntu 18.04 上更新固件

如何在 Ubuntu 18.04 上更新固件

通常,Ubuntu 和其他 Linux 中的默认软件中心会处理系统固件的更新。但是如果你遇到了错误,你可以使用 fwupd 命令行工具更新系统的固件。
Etcher.io 入门

Etcher.io 入门

用这个易用的媒体创建工具来创建一个可引导的 USB 盘或 SD 卡。
10 个在 Linux 上也有的流行的 Windows 程序

10 个在 Linux 上也有的流行的 Windows 程序

许多仅在 Windows 和/或 Mac上 有的程序可在 Linux 平台上使用了,而且不用麻烦。向 Snap 和 Flatpak 技术致敬,这些技术已经为 Linux 用户带来了许多“受限制”的程序。
初学者指南:在 Ubuntu Linux 上安装和使用 Git 和 GitHub

初学者指南:在 Ubuntu Linux 上安装和使用 Git 和 GitHub

这篇向导是对于安装和使用 GitHub 的的一个快速说明,本文还将涉及诸如创建本地仓库,如何链接这个本地仓库到包含你的项目的远程仓库(这样每个人都能看到你的项目了),以及如何提交改变并最终推送所有的本地内容到 Github。
如何重置 MySQL 或 MariaDB 的 Root 密码

如何重置 MySQL 或 MariaDB 的 Root 密码

几个月前,我在Ubuntu 18.04 上安装了 LAMP。今天,我尝试以 root 用户身份登录数据库,但我完全忘记了密码。经过一阵 Google 搜索并浏览一些文章后,我成功重置了密码。
使用 VS Code 进行 Python 编程

使用 VS Code 进行 Python 编程

安装启用 Python 扩展后,VS Code 可以配置成理想的 Python 开发工作环境。本文将介绍一些有用的 VS Code 扩展,并配置它们以充分提高 Python 开发效率。
如何在 Linux 中安装 2048 游戏

如何在 Linux 中安装 2048 游戏

流行的移动益智游戏 2048 也可以在 Ubuntu 和 Linux 发行版上玩。啊!你甚至可以在 Linux 终端上玩 2048。如果你的生产率因为这个让人上瘾的游戏下降,请不要怪我。
FreeDOS 的简单介绍

FreeDOS 的简单介绍

学习如何穿行于 C:\ 提示符下,就像上世纪 90 年代的 DOS 高手一样。
极致技术探索:显卡工作原理

极致技术探索:显卡工作原理

自从 3dfx 推出最初的 Voodoo 加速器以来,不起眼的显卡对你的 PC 是否可以玩游戏起到决定性作用,PC 上任何其它设备都无法与其相比。
Python 调试器入门

Python 调试器入门

Python 标准库提供了一个名为 pdb 的调试器。此调试器提供了调试所需的大多数功能,如断点、单行步进、堆栈帧的检查等等。
用 NodeJS 进行 Twitter 情感分析

用 NodeJS 进行 Twitter 情感分析

今天,我会试着让你感受下关于 Twitter 的简单 情感分析,判断这个 Twitter 是正能量、负能量还是中性的。这不会像专业人士所用的那么复杂,但至少,它会让你知道挖掘观念的想法。
Go 编译器介绍

Go 编译器介绍

cmd/compile 包含构成 Go 编译器主要的包。编译器在逻辑上可以被分为四个阶段,我们将简要介绍这几个阶段以及包含相应代码的包的列表。
Linux 用户应该换到 BSD 的 6 个理由

Linux 用户应该换到 BSD 的 6 个理由

为了准备这篇文章,我与几位 BSD 的用户聊了聊,其中有人使用了多年 Linux 而后转入 BSD。因而这篇文章的观点都来源于真实的 BSD 用户。
理解 Python 的 Dataclasses(一)

理解 Python 的 Dataclasses(一)

如果你正在阅读本文,那么你已经意识到了 Python 3.7 以及它所包含的新特性。就我个人而言,我对 Dataclasses 感到非常兴奋,因为我等了它一段时间了。
全面教程:在 RxJS 中创建流

全面教程:在 RxJS 中创建流

有些时候,混用响应式和非响应式代码似乎很有用。然后大家就开始热衷流的创造。不论是在编写异步代码或者是数据处理时,流都是一个不错的方案。
极客漫画:函数式编程的世界

极客漫画:函数式编程的世界

作者巧妙地指出了函数式编程不可变的特点。当你需要改变一个对象的属性的时候……嗯,销毁了再创建一个就是了。
使用 Fstransform 转换文件系统

使用 Fstransform 转换文件系统

Fstransform 可以几乎以任意组合将 ext2、ext3、ext4、jfs、reiserfs 或 xfs 分区转换成另一类型。更重要的是,它可以直接执行,而无需格式化或复制数据。
一套有用的 Unix 实用程序

一套有用的 Unix 实用程序

还有更多有用的实用程序没有预装在类 Unix 操作系统中,它们汇集起来构成了 moreutilis 这个日益增长的集合。
逐层拼接云原生栈

逐层拼接云原生栈

看着我们在纽约的办公大楼,我们发现了一种观察不断变化的云原生领域的完美方式。
Fedora 下的图像创建程序

Fedora 下的图像创建程序

Fedora 有很多程序可以帮助你的创造力。从数字绘图、矢量到像素艺术,每个人都可以在这个周末发挥创意。
如何在 Linux Shell 编程中定义和使用函数

如何在 Linux Shell 编程中定义和使用函数

函数是一段可复用的代码。我们通常把重复的代码放进函数中并且在不同的地方去调用它。库是函数的集合。我们可以在库中定义经常使用的函数,这样其它脚本便可以不再重复代码而使用这些函数。
对比 Ubuntu 18.04 和 Fedora 28

对比 Ubuntu 18.04 和 Fedora 28

Ubuntu 和 Fedora 是两个主流的 Linux 发行版。两者都各自有一些华而不实的特性,因而新接触 Linux 的人很难抉择。我的建议是同时尝试二者,这样你在试用后可以发现哪个发行版提供的工具更适合你。
Linux DNS 查询剖析(第二部分)

Linux DNS 查询剖析(第二部分)

在第二部分中,我将介绍 resolv.conf 的更新机制、systemctl restart networking 命令的运行机制 ,以及 dhclient 是如何参与其中。
使用 Docker 的用户名字空间功能

使用 Docker 的用户名字空间功能

该功能允许主机系统将自身的 uid 和 gid 映射为容器进程中的另一个 uid 和 gid。这对 Docker 的安全性来说是一项巨大的改进。
使用 Ptrace 去拦截和仿真 Linux 系统调用

使用 Ptrace 去拦截和仿真 Linux 系统调用

ptrace(2)(“进程跟踪”)系统调用通常都与调试有关。它是类 Unix 系统上通过原生调试器监测被调试进程的主要机制。它也是实现 strace(系统调用跟踪)的常见方法。
从零开始学习 Go 语言的切片

从零开始学习 Go 语言的切片

这篇文章受到了我与同事讨论使用切片slice作为栈stack的一次聊天的启发。后来话题聊到了 Go 语言中的切片是如何工作的。我认为这些信息对别人也有用,所以就把它记录了下来。
包管理器的进化

包管理器的进化

包管理器在 Linux 软件管理中扮演了重要角色。这里对一些主要的包管理器进行了对比。
极客漫画:AI 监管

极客漫画:AI 监管

台上某疑似“钢铁侠”正在宣讲“AI 监管”,遭到了群嘲——怒极之下,却暴露出了其原本是一个“AI”。
UNIX 的怪东西

UNIX 的怪东西

最近我在用我编写的各种工具做更多 UNIX 下的事情,我遇到了两个有趣的问题。这些都不是 “bug”,而是我没想到的行为。
使用 Kafka 和 MongoDB 进行 Go 异步处理

使用 Kafka 和 MongoDB 进行 Go 异步处理

在这个示例中,我将数据的保存和 MongoDB 分离,并创建另一个微服务去处理它。我还添加了 Kafka 为消息层服务,这样微服务就可以异步处理它自己关心的东西了。
什么是 CI/CD?

什么是 CI/CD?

在软件开发中经常会提到持续集成(CI)和持续交付(CD)这几个术语。但它们真正的意思是什么呢?
CSRF(跨站请求伪造)简介

CSRF(跨站请求伪造)简介

设计 Web 程序时,安全性是一个主要问题。我不是在谈论 DDoS 保护、使用强密码或两步验证。我说的是对网络程序的最大威胁。它被称为CSRF, 是 Cross Site Request Forgery (跨站请求伪造)的缩写。
比特币是一个邪教

比特币是一个邪教

币之邪教(Cult of the Coin)有许多圣人,或许没有人比中本聪Satoshi Nakamoto更伟大,他是比特币创始者(们)的假名。
老树发新芽:微服务

老树发新芽:微服务

如果我告诉你有这样一种软件架构,一个应用程序的组件通过基于网络的通讯协议为其它组件提供服务,我估计你可能会说它是 …
献给 Debian 和 Ubuntu 用户的一组实用程序

献给 Debian 和 Ubuntu 用户的一组实用程序

通过使用这些工具,用户可以找到哪些程序占用更多磁盘空间,更新系统后需要重新启动哪些服务,在一个软件包中搜索与模式匹配的文件,根据搜索字符串列出已安装的包等等。
4 款酷炫的终端应用

4 款酷炫的终端应用

许多 Linux 用户认为在终端中工作太复杂、无聊,并试图逃避它。但这里有个改善方法 —— 四款终端下很棒的开源程序。它们既有趣又易于使用,甚至可以在你需要在命令行中工作时照亮你的生活。
测试 Node.js,2018

测试 Node.js,2018

本文我们会展示 Node.js 测试过程中的困难部分,以及我们在 Winds 2.0 中用到的各种工具,并且在你要编写下一个测试集合时为你指明正确的方向。
CIP:延续 Linux 之光

CIP:延续 Linux 之光

CIP 的目标是创建一个基本的系统,使用开源软件来为我们现代社会的基础设施提供动力。
为什么 Arch Linux 如此“难弄”又有何优劣?

为什么 Arch Linux 如此“难弄”又有何优劣?

很多 Linux 老鸟对于 Arch Linux 会更了解,但电脑前的你可能只是刚开始打算把 Arch 当作日常操作系统来使用。虽然我也不是权威人士,但下面几点优劣是我认为你总会在使用中慢慢发现的。
针对 Bash 的不完整路径展开(补全)功能

针对 Bash 的不完整路径展开(补全)功能

bash-complete-partial-path 通过添加不完整的路径展开(类似于 Zsh)来增强 Bash(它在 Linux 上,macOS 使用 gnu-sed,Windows 使用 MSYS)中的路径补全。如果你想在 Bash 中使用这个省时特性,而不必切换到 Zsh,它将非常有用。
Streams:一个新的 Redis 通用数据结构

Streams:一个新的 Redis 通用数据结构

直到几个月以前,对于我来说,在消息传递的环境中,流(streams)只是一个有趣且相对简单的概念。这个概念在 Kafka 流行之后,我主要研究它们在 Disque 案例中的应用,Disque 是一个消息队列,它将在 Redis 4.2 中被转换为 Redis 的一个模块。
Debian 打包入门

Debian 打包入门

这篇博客描述了我如何从头开始学习为 CardBook 创建一个 Debian 包的。
Android 工程师的一年

Android 工程师的一年

今天,我想谈谈是自己是如何开始担任 Android 开发人员这个角色、如何换公司以及作为 Android 工程师的一年所得所失。
6 个开源的数字货币钱包

6 个开源的数字货币钱包

想寻找一个可以存储和交易你的比特币、以太坊和其它数字货币的软件吗?这里有 6 个开源的软件可以选择。
4 个提高你在 Thunderbird 上隐私的加载项

4 个提高你在 Thunderbird 上隐私的加载项

Thunderbird 是由 Mozilla 开发的流行的免费电子邮件客户端。与 Firefox 类似,Thunderbird 提供了大量加载项来用于额外功能和自定义。本文重点介绍四个加载项,以改善你的隐私。