从专有到开源的十个简单步骤
这个共同福利并不适用于专有软件:保持隐藏的东西是不能照亮或丰富这个世界的。“开源软件肯定不太安全,因为每个人都能看到它的源代码,而且他们能重新编译它,用他们自己写的不好的东西进行替换。”举手示意:谁之前听说过这个说法?注1当我和客户讨论的…
探秘“栈”之旅
早些时候,我们探索了 “内存中的程序之秘”,我们欣赏了在一台电脑中是如何运行我们的程序的。今天,我们去探索栈的调用,它在大多数编程语言和虚拟机中都默默地存在。在此过程中,我们将接触到一些平时很难见到的东西,像 闭包(closure)、递归、以及缓冲…
基于命令行的任务管理器 Taskwarrior
Taskwarrior 是一个灵活的命令行任务管理程序,用他们自己的话说:Taskwarrior 在命令行里管理你的 TODO 列表。它灵活,快速,高效,不显眼,它默默做自己的事情让你避免自己管理。Taskwarrior 是高度可定制的,但也可以“立即使用”。在本文中,我们将向你…
两款 Linux 桌面端可用的科学计算器
如果你想找个高级的桌面计算器的话,你可以看看开源软件,以及一些其它有趣的工具。每个 Linux 桌面环境都至少带有一个功能简单的桌面计算器,但大多数计算器只能进行一些简单的计算。幸运的是,还是有例外的:不仅可以做得比开平方根和一些三角函数还多,…
Linux 命令行下的数学运算
有几个有趣的命令可以在 Linux 系统下做数学运算: expr、factor、jot 和 bc 命令。可以在 Linux 命令行下做数学运算吗?当然可以!事实上,有不少命令可以轻松完成这些操作,其中一些甚至让你大吃一惊。让我们来学习这些有用的数学运算命令或命令语法吧。e…
使用 LUKS 加密你的磁盘
数据的安全,保密性在现在的生活中显得越来越重要。随着数字化的时代的来临,越来越多的数据被数字化,特别是更多有关于我们隐私的数据在不断生成,甚至还有我们需要离线保存的密钥等。而且通常我们使用磁盘,USB 闪存,SD 卡等存储介质进行存储,即便我们…
“Exit Trap” 让你的 Bash 脚本更稳固可靠
有个简单实用的技巧可以让你的 bash 脚本更稳健 -- 确保总是执行必要的收尾工作,哪怕是在发生异常的时候。要做到这一点,秘诀就是 bash 提供的一个叫做 EXIT 的伪信号,你可以 trap 它,当脚本因为任何原因退出时,相应的命令或函数就会执行。我们来看看它…
如何在终端中使用 Instagram | Linux 中国
Instagram 不需要介绍。它是像 Facebook 和 Twitter 之类的流行社交网络平台之一,它可以公开或私下分享照片和视频给确认过的粉丝。它是由两位企业家 Kevin Systrom 和 Mike Krieger于 2010 年发起的。2012 年,社交网络巨头 Facebook 收购了 Instagram。An…
如何在任何地方使用 Vim 编辑器输入文本
各位 Vim 使用者大家好!今天,我这里有个好消息告诉大家。我会向大家介绍 Vim-anywhere,这是一个简单的脚本,它允许你使用 Vim 编辑器在 Linux 中的任何地方输入文本。这意味着你能简单地调用自己最爱的 Vim 编辑器,输入任何你所想的,并将这些文本粘贴…
如何在 Fedora 上开始 Java 开发
Java 是世界上最流行的编程语言之一。它广泛用于开发物联网设备、Android 程序、Web 和企业应用。本文将提供使用 OpenJDK 安装和配置工作站的指南。安装编译器和工具在 Fedora 中安装编译器或 Java Development Kit(JDK)很容易。在写这篇文章时,可以用 v…
给初学者看的 shuf 命令教程
shuf 命令用于在类 Unix 操作系统中生成随机排列。使用 shuf 命令,我们可以随机打乱给定输入文件的行。shuf 命令是 GNU Coreutils 的一部分,因此你不必担心安装问题。在这个简短的教程中,让我向你展示一些 shuf 命令的例子。带例子的 shuf 命令教程我有…
5 个最佳实践开始你的 DevOps 之旅
想要实现 DevOps 但是不知道如何开始吗?试试这 5 个最佳实践吧。想要采用 DevOps 的人通常会过早的被它的歧义性给吓跑,更不要说更加深入的使用了。当一些人开始使用 DevOps 的时候都会问:“如何开始使用呢?”,”怎么才算使用了呢?“。这 5 个最佳实践…
放慢速度如何使我变成更好的领导者
开放式领导和耐心、倾听一样重要,它们都是关于执行的。在我职业生涯的早期,我认为我能做的最重要的事情就是行动。如果我的老板说跳,我的回答是“跳多高?”但是当我成长为一个领导者和管理者时,我意识到了我能提供的最重要的品质是 耐心 和倾听。耐心和…
强制关闭你的系统的内核模块
我知道熬夜对健康不利。但谁在乎?多年来我一直是一只夜猫子。我通常在 12 点以后睡觉,有时在凌晨 1 点以后睡觉。第二天早上,我至少推迟三次闹钟,醒来后又累又有脾气。每天,我向自己保证早点睡觉,但最终会像平常一样晚睡。而且,这个循环还在继续!如…
关于 BPF 和 eBPF 的笔记
今天,我喜欢的 meetup 网站上有一篇我超爱的文章!Suchakra Sharma(@tuxology 在 twitter/github)的一篇非常棒的关于传统 BPF 和在 Linux 中最新加入的 eBPF 的讨论文章,正是它促使我想去写一个 eBPF 的程序!这篇文章就是 —— BSD 包过滤器:一个新的…
系统调用,让世界转起来!
我其实不想将它分解开给你看,用户应用程序其实就是一个可怜的 瓮中大脑(brain in a vat): 它与外部世界的每个交流都要在内核的帮助下通过系统调用才能完成。一个应用程序要想保存一个文件、写到终端、或者打开一个 TCP 连接,内核都要参与。应用程序是被…
在 Ubuntu 和 Linux Mint 中轻松安装 Android Studio
Android Studio 是谷歌自己的 Android 开发 IDE,是带 ADT 插件的 Eclipse 的不错替代品。Android Studio 可以通过源代码安装,但在这篇文章中,我们将看到如何在 Ubuntu 18.04、16.04 和相应的 Linux Mint 变体中安装 Android Studio。在继续安装 Android …
Red Hat 的去 Docker 化容器实践
最近几年,开源项目 Docker (已更名为Moby) 在容器普及化方面建树颇多。然而,它的功能特性不断集中到一个单一、庞大的系统,该系统由具有 root 权限运行的守护进程 dockerd 管控,这引发了人们的焦虑。对这些焦虑的阐述,具有代表性的是 Red Hat 公司的容…
在 GitLab CI 中使用 Docker 构建 Go 项目
介绍这篇文章是我在 CI 环境(特别是在 Gitlab 中)的 Docker 容器中构建 Go 项目的研究总结。我发现很难解决私有依赖问题(来自 Node/.NET 背景),因此这是我写这篇文章的主要原因。如果 Docker 镜像上存在任何问题或提交请求,请随时与我们联系。dep由于…
4 个 Linux 下的命令行笔记程序
这些工具可以让你在 Linux 命令行下简单而有效地记录笔记和保存信息。当你需要保存代码段或 URL、想法或引用时,可能会启动文本编辑器或使用桌面或基于 Web 的笔记记录工具。但那些不是你唯一的选择。如果你在终端窗口中工作,则可以使用 Linux 命令行下的…