每个 Linux 用户都应该知道的 10 个命令

通过这 10 个基本命令开始掌握 Linux 命令行界面 (CLI)。
401 位读者喜欢这篇文章。
Terminal view

Jamie Cox。由 Opensource.com 修改。CC BY 2.0。

您可能认为自己是 Linux 新手,但实际上并非如此。全球有 37.4 亿 互联网用户,他们都在以某种方式使用 Linux,因为 Linux 服务器为 90% 的互联网提供支持。大多数现代路由器运行 Linux 或 Unix,并且 TOP500 超级计算机 也依赖于 Linux。如果您拥有 Android 智能手机,您的操作系统就是基于 Linux 内核构建的。

换句话说,Linux 无处不在。

但是,使用基于 Linux 的技术和使用 Linux 本身之间存在差异。如果您对 Linux 感兴趣,但一直在使用 PC 或 Mac 桌面,您可能想知道使用 Linux 命令行界面 (CLI) 需要了解什么。您来对地方了。

以下是您需要了解的基本 Linux 命令。每个命令都很简单,易于记住。换句话说,您不必成为比尔·盖茨才能理解它们。

1. ls

您可能在想,“Is 什么?” 不,这不是笔误——我确实想输入小写字母 L。ls 或“list”(列表)是您需要知道的第一个使用 Linux CLI 的命令。此 list 命令在 Linux 终端中运行,以显示在各自文件系统下归档的所有主要目录。例如,此命令

ls /applications

显示 applications 文件夹中存储的每个文件夹。您将使用它来查看文件、文件夹和目录。

所有隐藏文件都可以通过使用命令 ls -a 查看。

2. cd

此命令是您用来进入(或“更改”)目录的命令。它是您从一个文件夹导航到另一个文件夹的方式。假设您在 Downloads 文件夹中,但您想转到名为 Gym Playlist 的文件夹。只需键入 cd Gym Playlist 将不起作用,因为 shell 无法识别它,并且会报告您要查找的文件夹不存在。要调出该文件夹,您需要包含一个反斜杠。该命令应如下所示

cd Gym\ Playlist

要从当前文件夹返回到上一个文件夹,您可以键入文件夹名称,后跟 cd ..。将这两个点想象成一个后退按钮。

3. mv

此命令将文件从一个文件夹传输到另一个文件夹;mv 代表“move”(移动)。您可以像在 PC 上将文件拖到文件夹一样使用此简短命令。

例如,如果我创建一个名为 testfile 的文件来演示所有基本 Linux 命令,并且我想将其移动到我的 Documents 文件夹,我将发出此命令

mv /home/sam/testfile /home/sam/Documents/

命令的第一部分 (mv) 表示我要移动文件,第二部分 (home/sam/testfile) 命名我要移动的文件,第三部分 (/home/sam/Documents/) 指示我要将文件传输到的位置。

4. 键盘快捷键

好的,这不仅仅是一个命令,但我忍不住将它们全部包含在此处。为什么?因为它们可以节省时间,让您的体验不再头疼。

CTRL+K 从光标处剪切文本到行尾

CTRL+Y 粘贴文本

CTRL+E 将光标移动到行尾

CTRL+A 将光标移动到行首

ALT+F 向前跳到下一个空格

ALT+B 向后跳到上一个空格

ALT+Backspace 删除上一个单词

CTRL+W 剪切光标后面的单词

Shift+Insert 将文本粘贴到终端中

Ctrl+D 注销

这些命令在许多方面都派上用场。例如,想象一下您在命令文本中拼错了一个单词

sudo apt-get intall programname

您可能注意到“install”拼写错误,因此该命令将不起作用。但是键盘快捷键使您可以轻松地返回并修复它。如果我的光标位于行尾,我可以单击 ALT+B 两次以将光标移动到下面用 ^ 符号标记的位置

sudo apt-get^intall programname

现在,我们可以快速添加字母 s 来修复 install。很简单!

5. mkdir

这是您用来在 Linux 环境中创建目录或文件夹的命令。例如,如果您像我一样热衷于 DIY 技巧,则可以输入 mkdir DIY 来为您的 DIY 项目创建一个目录。

6. at

如果您想在特定时间运行 Linux 命令,可以添加 at。语法是 at,后跟您希望命令运行的日期和时间。然后命令提示符变为 at>,以便您可以输入要在上面指定的时间运行的命令

例如

at 下午 4:08 周六
at> cowsay '你好'
at> CTRL+D

这将使程序 cowsay 在星期六晚上 4:08 运行。

7. rmdir

此命令允许您通过 Linux CLI 删除目录。例如

rmdir testdirectory

请记住,此命令不会删除其中包含文件的目录。这仅在删除空目录时有效。

8. rm

如果您想删除文件,则 rm 命令是您想要的。它可以删除文件和目录。要删除单个文件,请键入 rm testfile,或者要删除目录及其中的文件,请键入 rm -r

9. touch

touch 命令,也称为“创建文件命令”,允许您使用 Linux CLI 创建新的空文件。就像 mkdir 创建目录一样,touch 创建文件。例如,touch testfile 将创建一个名为 testfile 的空文件。

10. locate

此命令是您用来在 Linux 系统中查找文件的命令。可以将其视为 Windows 中的搜索。如果您忘记了文件的存储位置或文件名,它非常有用。

例如,如果您有一个关于区块链用例的文档,但您想不起标题,则可以输入 locate -blockchain ,或者您可以通过用星号或星号 (*) 分隔单词来查找“blockchain use cases”。例如:

locate -i*blockchain*use*cases*.


还有许多其他有用的 Linux CLI 命令,例如 pkill 命令,如果您启动关机并意识到自己不想这样做,该命令非常有用。但是此处描述的 10 个简单且有用的命令是您开始使用 Linux 命令行所需的 essentials。

标签
User profile image.
Sam Bocetta 是美国海军的退休国防承包商、国防分析师和自由记者。他专注于寻找“不可能”弹道问题的根本解决方案。他涵盖物联网安全、加密、密码学、网络战和网络防御领域的趋势。

14 条评论

非常有用! :)

你怎么能从键盘快捷键列表中遗漏 Ctrl+u 呢? 那是我最常用的快捷键。它就像 Ctrl+k,但方向相反(从光标处剪切到行首)。

Touch 实际上不是用于创建文件的;创建文件是它真正用途和作用的副作用。`touch file` 更新 `file` 的访问时间 - 如果 `file` 尚不存在,这会产生创建 `file` 作为零块空文件的副作用。

me@banshee:/tmp$ touch file ; stat file
文件:'file'
大小:0 块:0 IO 块:4096 常规空文件
设备:841h/2113d 节点:692239 链接:1
访问权限:(0664/-rw-rw-r--) 用户 ID:( 1000/ me) 组 ID:( 1000/ me)
访问时间:2018-04-03 14:34:01.440460376 -0400
修改时间:2018-04-03 14:34:01.440460376 -0400
更改时间:2018-04-03 14:34:01.440460376 -0400
出生时间:-

me@banshee:/tmp$ touch file ; stat file
文件:'file'
大小:0 块:0 IO 块:4096 常规空文件
设备:841h/2113d 节点:692239 链接:1
访问权限:(0664/-rw-rw-r--) 用户 ID:( 1000/ me) 组 ID:( 1000/ me)
访问时间:2018-04-03 14:34:43.336937192 -0400
修改时间:2018-04-03 14:34:43.336937192 -0400
更改时间:2018-04-03 14:34:43.336937192 -0400
出生时间:-

* 更改访问时间和修改时间,抱歉。

我认为您列出了 Linux 用户会认为是最基本的终端命令,例如:ls、cd、mv、mkdir 和 rm。“pwd”命令也很基本,如果您的工作目录未在提示符中列出。

“rmdir”对于任何可以使用“rm”的递归选项删除目录及其内容的人来说都不是基本的,而“touch”也不是基本的,因为可以使用编辑器或输出重定向来创建文件。此外,键盘快捷键根本不是必需的,许多人永远不需要“at”命令。

关于“locate”命令,如果它被认为是基本的,那么基本命令列表会变得更长,“updatedb”将成为一个重要的命令。

我能想到的,以下是一些其他有用的命令,供想要学习使用 Linux 终端的人使用:man、apropos、sudo、su、chown、chmod、find、xargs、grep、sed、mount、less、stat

每个人都会添加自己的命令,但我在许多 Linux 版本中最喜欢的键盘快捷键之一是“alt-period”,它会粘贴上一个命令的最后一个单词。重复点击它会历史性地返回。自从我最近了解到它以来,我使用它的频率惊人地高。有人知道重复上一个命令的第一个元素的快捷键吗?

mv 本质上是一个重命名命令。是的,有一个重命名命令,但如果您查看其手册页,它是一种专门的重命名用法。
当然,mv 实际上并没有移动任何东西,它只是更改了文件的逻辑位置,无论是其名称还是整个路径名。

如果源和目标在同一文件系统中,那么您是正确的,除了文件指针之外,没有任何东西被移动。但如果要求这样做,它肯定会将文件从一个分区/文件系统移动到另一个分区/文件系统。

回复 ,作者:Greg P

您大错特错了!

mv 当然实际上是将文件的目录条目从一个位置移动到另一个位置,并且如果需要,它还会复制文件,以保留移动目录条目的语义。

回复 ,作者:Greg P

不是更正 - 但我认为如果您提供带有 rm -r 的完整示例(例如 rm testDir -r),它将改进文档。它目前的写法暗示它神奇地找出了目录名称。

man
必须包含在基本命令列表中!否则没有人知道 RTFM 是什么意思! https://xkcd.com/293/

非常好。谢谢!

我不知道所有这些键盘快捷键。非常有用,我喜欢它。谢谢!

对于那些不太熟悉 Linux 命令行的人来说,这是一篇非常有帮助且相关的文章,对于其他人来说也是一个很好的复习。
谢谢。

知识共享许可协议本作品根据知识共享署名-相同方式共享 4.0 国际许可协议获得许可。
© . All rights reserved.