使用 Node.js 构建交互式命令行工具
使用 Node.js 构建一个根据询问创建文件的命令行工具。当用于构建命令行界面(CLI)时,Node.js 十分有用。在这篇文章中,我将会教你如何使用 Node.js 来构建一个问一些问题并基于回答创建一个文件的命令行工具。开始首先,创建一个新的 npm 包(NPM 是 Jav…
Linux 下最棒的 11 个图片查看器
如果不是因为系统自带的图片查看器没有你想要的功能,或者你想要更棒的体验,你大概不会想切换到其它图片查看器吧。不过,如果你喜欢折腾,你可能就会想用不同的图片查看器了吧。我猜最终你会被新图片查看器的全新用户体验或特色功能所吸引的。在本篇文章中…
初级:如何在终端及图形界面中更新 Ubuntu
这篇教程将向你展示如何更新服务器版本或者桌面版本的 Ubuntu。它还解释了更新和升级之间的区别以及你应该了解的有关于 Ubuntu Linux 中的更新的一些其他内容。如果你是一个新手并已经体验 Ubuntu 数天或几周,你可能想知道如何更新你的 Ubuntu 系统以获取…
如何构建一台网络引导服务器(三)
在 如何构建一台网络引导服务器(一) 中,我们提供了一个极简的 iPXE 引导脚本来引导你的网络引导镜像。许多用户除了使用网络引导镜像外,可能在机器本地也有一个操作系统。但是使用常见的工作站的 BIOS 去切换引导加载器是很笨拙的。在本系列文件的第三部…
一个 HTTP/2 的故事
大约一个月前,有人在我所在的 IRC 频道中提到了 HTTP/2。由于某种原因,我从未听说过它,而且新协议的一些功能(比如无需打开多个 TCP 连接就能复用请求)似乎很酷。说实话,我刚刚重写了管理我们备份程序的 Puppet 代码,启用 HTTP/2 似乎是一种转向另一…
用 PGP 保护代码完整性(四):将主密钥移到离线存储中
如果开发者的 PGP 密钥被偷了,危害非常大。了解一下如何更安全。在本系列教程中,我们为使用 PGP 提供了一个实用指南。你可以从下面的链接中查看前面的文章:第一部分:基本概念和工具第二部分:生成你的主密钥第三部分:生成 PGP 子密钥这是本系列教程的…
极客漫画:呃,70 后
70 后的老程序员已经对层出不穷的编程语言感到了厌烦,虽然这已经距离上一个编程语言出现已经十年了。虽然老程序员依旧很潮——扎着马尾,穿着花裤子——但是不能掩饰其秃顶和肥胖的腰身。IT 行业,是一个日新月异的行业,老程序员们如何跟上时代呢?十年,…
CEO 的 Emacs 秘籍
几年前,不,是几十年前,我就在用 Emacs。不论是码代码、编写文档,还是管理邮件和日程,我都用这个编辑器,或者是说操作系统,而且我还乐此不疲。许多年过去了,我也转向了其他更新、更好的工具。结果,就连最基本的文件浏览,我都已经忘了在不用鼠标的情…
用户、组及其它 Linux 特性(二)
我们继续创建和管理用户和组的 Linux 教程之旅。在正在进行的 Linux 之旅中,我们了解了如何操作文件夹或目录,现在我们继续讨论 权限、用户 和 组,这对于确定谁可以操作哪些文件和目录是必要的。上次,我们展示了如何创建新用户,现在我们将重新起航:你…
用于游戏开发的图形和音乐工具
要在三天内打造一个可玩的游戏,你需要一些快速而稳定的好工具。在十月初,我们马歇尔大学的 Geeks and Gadgets 的俱乐部参加了首次 Open Jam,这是一个庆祝最佳开源工具的游戏 Jam。游戏 Jam 是一种活动,参与者以团队协作的方式来开发有趣的计算机游戏。J…
Linux 求职建议
通过对招聘网站数据的仔细研究,我们发现,即使是非常有经验的 Linux 程序员,也会在面试中陷入困境。这就导致了很多优秀并且有经验的人无缘无故地找不到合适的工作,因为如今的就业市场需要我们有一些手段来提高自己的竞争力。我有两个同事和一个表哥,他…
Android ANR 实例分析
什么是ANR?以下四个条件都可以造成ANR发生:InputDispatching Timeout:5秒内无法响应屏幕触摸事件或键盘输入事件BroadcastQueue Timeout :在执行前台广播(BroadcastReceiver)的onReceive()函数时10秒没有处理完成,后台为60秒。Service Timeout :前台…
在 Linux 命令行中观看彩虹猫来稍事休息
你甚至可以在终端里欣赏彩虹猫。今天是《Linux 命令行小玩具介绍》的第六天。在本系列文章中,我们将会探索一些娱乐用途(甚至有时完全没用)的 Linux 命令行小玩具。所有我们介绍的小玩具都是开源的。也许你会问,它们都很独特吗?是的。不过,它们对你是…
如何构建一台网络引导服务器(二)
在 如何构建一台网络引导服务器(一) 的文章中,我们展示了如何创建一个网络引导镜像,在那个镜像中使用了一个名为 liveuser 帐户,它的家目录位于内存中,重启后家目录中的内容将全部消失。然而很多用户都希望机器重启后保存他们的文件和设置。因此,在本…
救命!我的电子邮件发不到 500 英里以外!
(LCTT 译注:本文翻译自 Trey Harris 发表的文章,原文已经发表了一段时间,在网上有流传有不同的译本。这篇译文系我们独立翻译整理,某些专有名词的翻译,如“三角研究园”,参考了维基百科等资料。此外,这篇文章所述内容,未必属实,译者以为有些地方是…
在 Linux 终端收听广播
MPlayer 是一个多功能的开源媒体播放器,它在 Linux 命令行中非常有用。你已经看到我们为期 24 天的 Linux 命令行玩具日历。如果这是你第一次访问该系列,你可能会问自己什么是命令行玩具。它可能是一个游戏或任何简单的消遣,可以帮助你在终端玩得开心。你…
如何在 Linux 中安装 Rust 编程语言
Rust 通常被称为 rust-lang。Rust 是一个由 Mozilla Research 赞助的通用的、多范式、现代的、跨平台和开源系统编程语言。它旨在实现安全性、速度和并发性等目标。Rust 在语法上与 C++ 相似,但它的设计者希望它在保持性能的同时提供更好的内存安全性。Rust…
糖尿病患者们是怎样使用开源造出自己的医疗设备的
Red Hat 的 2018 女性开源社区奖获得者 Dana Lewis 的故事。Dana Lewis 被评选为开源社区 2018 年度最佳女性!下面是开源怎样改善了她的健康的故事。Dana 患有 I 型糖尿病,但当时市面上流通的药品和医疗设备都对她无效。她用来管理血糖的动态血糖监测(CGM…
在你的终端里探索海洋的秘密
“亲爱的,当您的命令行变得更湿润的时候会更好。这多亏了 ASCII。”现在,我们即将数完长达 24 天的 Linux 命令行玩具日历。离今天只剩一周了!如果这是您第一次访问本系列文章,那么您可能会问自己什么是命令行玩具。我们一边走,一边说,但一般来说,这…
Caffeinated 6.828:实验 5:文件系统、Spawn 和 Shell
Caffeinated 6.828:使用的工具Caffeinated 6.828:实验工具指南 Caffeinated 6.828:实验 1:PC 的引导过程Caffeinated 6.828:实验 2:内存管理 Caffeinated 6.828:实验 3:用户环境 Caffeinated 6.828:实验 4:抢占式多任务处理 Caffeinated 6.828:实…