Patrick H.mullins 发布的文章

欢迎来到 Linux 令人毛骨悚然的一面。

又是一年中的这个时候:天气变冷了、树叶变色了,各处的孩子都化妆成了小鬼、妖精和僵尸。(LCTT 译注:本文原发表于万圣节)但你知道吗, Unix (和 Linux) 和它们的各个分支也充满了令人毛骨悚然的东西?让我们来看一下我们所熟悉和喜爱的操作系统的一些令人毛骨悚然的一面。

半神(守护进程)

如果没有潜伏于系统中的各种 守护进程 daemon ,那么 Unix 就没什么不同。守护进程是运行在后台的进程,并为用户和操作系统本身提供有用的服务,比如 SSH、FTP、HTTP 等等。

僵尸(僵尸进程)

不时出现的僵尸进程是一种被杀死但是拒绝离开的进程。当它出现时,无疑你只能选择你有的工具来赶走它。僵尸进程通常表明产生它的进程出现了问题。

杀死(kill)

你不仅可以使用 kill 来干掉一个僵尸进程,你还可以用它杀死任何对你系统产生负面影响的进程。有一个使用太多 RAM 或 CPU 周期的进程?使用 kill 命令杀死它。

猫(cat)

cat 和猫科动物无关,但是与文件操作有关:cat 是 “concatenate” 的缩写。你甚至可以使用这个方便的命令来查看文件的内容。

尾巴(tail)

当你想要查看文件中最后 n 行时,tail 命令很有用。当你想要监控一个文件时,它也很棒。

巫师(which)

哦,不,它不是巫师(witch)的一种。而是打印传递给它的命令所在的文件位置的命令。例如,which python 将在你系统上打印每个版本的 Python 的位置。

地下室(crypt)

crypt 命令,以前称为 mcrypt,当你想要加密(encrypt)文件的内容时,它是很方便的,这样除了你之外没有人可以读取它。像大多数 Unix 命令一样,你可以单独使用 crypt 或在系统脚本中调用它。

切碎(shred)

当你不仅要删除文件还想要确保没有人能够恢复它时,shred 命令很方便。使用 rm 命令删除文件是不够的。你还需要覆盖该文件以前占用的空间。这就是 shred 的用武之地。

这些只是你会在 Unix 中发现的一部分令人毛骨悚然的东西。你还知道其他诡异的命令么?请随时告诉我。

万圣节快乐!(LCTT:可惜我们翻译晚了,只能将恐怖的感觉延迟了 :D)


via: https://opensource.com/article/18/10/spookier-side-unix-linux

作者:Patrick H.Mullins 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

对 Bash 长命令使用压缩的版本来更有效率。

你有多少次在命令行上输入一个长命令,并希望有一种方法可以保存它以供日后使用?这就是 Bash 别名派上用场的地方。它们允许你将长而神秘的命令压缩为易于记忆和使用的东西。需要一些例子来帮助你入门吗?没问题!

要使用你创建的 Bash 别名,你需要将其添加到 .bash_profile 中,该文件位于你的家目录中。请注意,此文件是隐藏的,并只能从命令行访问。编辑此文件的最简单方法是使用 Vi 或 Nano 之类的东西。

10 个方便的 Bash 别名

1、 你有几次遇到需要解压 .tar 文件但无法记住所需的确切参数?别名可以帮助你!只需将以下内容添加到 .bash_profile 中,然后使用 untar FileName 解压缩任何 .tar 文件。

alias untar='tar -zxvf '

2、 想要下载的东西,但如果出现问题可以恢复吗?

alias wget='wget -c '

3、 是否需要为新的网络帐户生成随机的 20 个字符的密码?没问题。

alias getpass="openssl rand -base64 20"

4、 下载文件并需要测试校验和?我们也可做到。

alias sha='shasum -a 256 '

5、 普通的 ping 将永远持续下去。我们不希望这样。相反,让我们将其限制在五个 ping

alias ping='ping -c 5'

6、 在任何你想要的文件夹中启动 Web 服务器。

alias www='python -m SimpleHTTPServer 8000'

7、 想知道你的网络有多快?只需下载 Speedtest-cli 并使用此别名即可。你可以使用 speedtest-cli --list 命令选择离你所在位置更近的服务器。

alias speed='speedtest-cli --server 2406 --simple'

8、 你有多少次需要知道你的外部 IP 地址,但是不知道如何获取?我也是。

alias ipe='curl ipinfo.io/ip'

9、 需要知道你的本地 IP 地址?

alias ipi='ipconfig getifaddr en0'

10、 最后,让我们清空屏幕。

alias c='clear'

如你所见,Bash 别名是一种在命令行上简化生活的超级简便方法。想了解更多信息?我建议你 Google 搜索“Bash 别名”或在 Github 中看下。


via: https://opensource.com/article/18/9/handy-bash-aliases

作者:Patrick H.Mullins 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

学习一种不同的包管理器和怎么使用它。

如果你在一直在使用 Linux,你很快就会发现做同样的事情有很多不同的方法。这包括通过命令行在 Linux 上安装应用。我已经是大约 25 年的 Linux 用户,我一次又一次地回到命令行来安装我的应用。

从命令行安装应用程序最常用的方法是使用称为包管理器通过软件库(存储软件的地方)安装。所有 Linux 应用都作为软件包分发,这些软件包只不过是与软件包管理系统相关的文件。每个 Linux 发行版都附带一个包管理系统,但它们并不完全相同。

什么是包管理系统?

包管理系统由一组工具和文件格式组成,它们一起用于安装、更新和卸载 Linux 应用。两种最常见的包管理系统来自 Red Hat 和 Debian。 Red Hat、CentOS 和 Fedora 都使用 rpm 系统(.rpm 文件),而 Debian、Ubuntu、Mint 和 Ubuntu 都使用 dpkg(.deb 文件)。Gentoo Linux 使用名为 Portage 的系统,Arch Linux 只使用 tarball(.tar 文件)。这些系统之间的主要区别在于它们如何安装和维护应用。

你可能想知道 .rpm.deb.tar 文件中的内容。你可能会惊讶地发现,所有这些都只是普通的老式归档文件(如 .zip),其中包含应用的代码,如何安装它的说明,依赖项(它可能依赖的其他应用),以及配置文件的位置。读取和执行所有这些指令的软件称为包管理器。

Debian、Ubuntu、Mint 等

Debian、Ubuntu、Mint 和其它基于 Debian 的发行版都使用 .deb 文件和 dpkg 包管理系统。有两种方法可以通过此系统安装应用。你可以使用 apt 程序从仓库进行安装,也可以使用 dpkg 程序从 .deb 文件安装应用。我们来看看如何做到这两点。

使用 apt 安装应用非常简单:

$ sudo apt install app_name

通过 apt 卸载应用也非常简单:

$ sudo apt remove app_name

要升级已安装的应用,首先需要更新应用仓库:

$ sudo apt update

完成后,你可以使用以下命令更新任何程序:

$ sudo apt upgrade

如果你只想更新一个应用,该怎么办?没问题。

$ sudo apt update app_name

最后,假设你要安装的应用不存在于 Debian 仓库中,但有 .deb 下载。

$ sudo dpkg -i app_name.deb

Red Hat、CentOS 和 Fedora

默认情况下,Red Hat 使用多个包管理系统。这些系统在使用自己的命令时,互相仍然非常相似,而且与 Debian 中使用的也相似。例如,我们可以使用 yumdnf 管理器来安装应用。

$ sudo yum install app_name
$ sudo dnf install app_name

.rpm 格式的应用也可以使用 rpm 命令安装。

$ sudo rpm -i app_name.rpm

删除不需要的应用同样容易。

$ sudo yum remove app_name
$ sudo dnf remove app_name

更新应用同样容易。

$ yum update
$ sudo dnf upgrade --refresh

如你所见,从命令行安装、卸载和更新 Linux 应用并不难。事实上,一旦你习惯它,你会发现它比使用基于桌面 GUI 的管理工具更快!

有关从命令行安装应用程序的更多信息,请访问 Debian Apt wikiYum 速查表DNF wiki


via: https://opensource.com/article/18/8/how-install-software-linux-command-line

作者:Patrick H.Mullins 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出