在 Linux Shell 中生存的初学者指南

在本文中,您将学习如何通过学习十个最有用的 Linux 命令来消除对 Linux shell 的恐惧。

生活中所有最优秀的人似乎都喜欢 LINUX – Steve Wozniak

Linux Shell/命令行

黑屏,白色文本,没有图形,是的!Linux Shell 乍一看确实令人望而生畏,但它比任何图形工具都强大得多。

Linux 为全球 70% 的服务器和 90% 的超级计算机提供动力。Linux 的学习曲线很陡峭,要学习它,您需要在其中生活一段时间。一旦你精通命令行,你就会获得一项让你与众不同的技能。

本文介绍并解释了在 Linux shell 环境中生存所需的 10 个最有用的 Linux 命令。阅读本文后,您应该能够使用命令行执行所有基本任务,例如创建和删除目录、编辑文本文件等。

为什么要学习 Linux 命令行?

擅长使用命令行的好处。

  • 您可以更多地了解您的操作系统。
    shell 比图形文件浏览器更直接地向您展示文件系统,它使您了解操作系统的层次结构和结构。您还可以直接使用配置文件,这使您能够更有效地控制操作系统。
  • 您可以远程控制计算机和服务器。像SSHTelnet
    这样的网络协议允许您远程连接到网络上的计算机,但它们只为您提供 shell 而不是图形界面。因此,只有熟悉 shell 才能使用这些协议。
  • 你可以在没有任何人帮助的情况下安装 Arch Linux
    Arch Linux 是一个 Linux 发行版,它的安装方法让许多初学者感到害怕。要安装 Arch Linux,您需要使用 shell 手动完成从磁盘分区到用户创建的所有步骤。你需要非常擅长 Linux shell 才能安装 Arch Linux。
  • 您可以获得报酬来配置和管理 Linux 服务器。
    大多数公司都有一个名为“Linux 系统管理员”的职位。该职位人员的职责是维护 Linux 计算机并根据要求对其进行更改和配置。这个角色的人必须非常擅长 Linux Shell,并且应该知道配置 Linux 系统所需的所有命令。

Linux 命令提示符

当您在 Linux 发行版中打开终端应用程序时,您将看到一个黑屏,上面印有您的姓名和一些其他信息。之后,您将看到一个准备好接收命令的光标。提示显示的信息是可配置的,但超出了本教程的范围。

zzllZ1dcG-XhRNdpyGEmSghbZmhQdYXQB4JB
[用户名@主机名当前目录]$

提示提供有关用户名、主机名(您的计算机在网络上显示的名称)、当前工作目录和“$”的信息,这表示您是普通用户而不是 root 用户(root 用户有Linux 中的所有特权和权利)。

10 个基本命令

这 10 个命令将使您能够以一种能够执行在图形用户界面环境中执行的所有任务的方式体验 shell,例如创建和删除目录、写入、编辑和删除文件等,在外壳中没有遇到任何问题。

1.密码

打印工作目录 (pwd) 命令打印您正在工作的目录的完整路径。当您打开终端应用程序时,它通常会在您的主文件夹中启动 shell,因此运行该pwd命令将打印“/home/(your-用户名)。’~’ 代表提示中的家。

q6g9sTGABPXyjHqygPu9WrAntYD36G3tbEC5
主文件夹中的 pwd 命令

2. 光盘

更改目录 (cd) 命令将工作目录更改为以 cd 命名的目录。写入cd myfolder会将工作目录更改为 ‘myfolder’ 并且其名称将出现在提示符中,但如果当前目录中不存在 ‘myfolder’ 则会抛出错误。

0T5iCKOE7JlCPyhM0aU8TMik9-UN4862-AYN
cd 到 myfolder 然后运行 ​​pwd

在上述步骤之后运行“pwd”命令将显示我们切换到的目录的路径。

运行cd ..命令会将工作目录更改为层次结构中的上一个目录。在这种情况下,它将变回主目录。

CjYtnXGLppUpsrd6vfQxjeO9L9XfVlthV1JG
运行 ‘cd ..’ 切换到上一个目录,然后运行 ​​pwd。

您还可以提供要切换到的目录的绝对路径。绝对路径是从根目录开始的完整路径。例如,“myfolder”的绝对路径将是“/home/puranjay/myfolder”,这与 pwd 命令显示的路径相同。

3.ls

List (ls) 命令打印当前工作目录的内容,它打印当前目录中存在的所有文件和目录的名称。在 ‘myfolder’ 目录中运行ls将显示其内容,即 file1、file2 等。

TaePljLT3fT2nJCjxvnPyvJKkdUn-DzEP0BF
在 myfolder 目录中运行的 ls 命令

您还可以提供您希望查看其内容的目录的绝对路径。例如,如果工作目录是主目录并且ls /boot正在运行,则 shell 将打印根 (/) 目录中存在的“引导”文件夹的内容。工作目录不会改变。’boot’ 和 ‘/boot’ 对 shell 的含义也不相同。“boot”表示当前工作目录中的目录或文件,但“/boot”表示根(/)目录中存在的目录或文件。运行ls boot将打印一条错误消息,因为当前工作目录(主目录)中没有名为“boot”的文件或文件夹。

48xdRf17CmuwqY1VPoU2UhdRD7uKDlaJZc5l
ls /boot 显示根目录下的引导目录内容,但 ls boot 显示错误

4.男人

man(manual) 命令将打开 man 之后给出的命令的手册页。手册页包含有关 Linux 中所有可用命令的文档,它们提供有关正确使用该命令以及该命令可用的不同选项的信息。

要退出手册页,请按“ q ”。

例如,运行man ls将打开 ls 命令的手册页。

JCZU2ozbykb3h7XWxcNHjydpFhQbQ5l-fHLi
ls 命令的手册页

5.mkdir

Make-directory (mkdir) 命令在当前工作目录中创建一个在命令后给出的名称的新目录。例如,运行mkdir hello将在当前目录中创建一个名为“hello”的文件夹。目录创建完成后,运行cd hello会将当前目录更改为新建的’hello’目录,’~’将更改为’hello’。

hLfshSo4P6YvuXovTirK3orqrs7We64Yroa6
创建一个名为“hello”的目录,然后更改为该目录。

6. rm目录

删除目录 (rmdir) 删除/删除命令后指定名称的目录。运行rmdir hello将删除之前创建的 ‘hello’ 目录。不能通过在要删除的同一目录中运行 rmdir 来删除目录。该命令cd ..可用于退出目录,然后rmdir hello可以运行将其删除。

CTZDh51AjPqZCIECZ3gioTMyMz5k25OE3Yz3
移出“hello”目录,然后将其删除。

如果一个目录不为空并且rmdir运行以删除该目录,那么它将失败并显示错误,指出要删除的目录不为空。

LAtnIwDlg-0AiKkaW9WmQXSofw9qzZ7DrDed
‘hello’ 包含一个名为 ‘file1’ 的文件,因此 rmdir 失败并出现错误。

要克服此错误并删除非空目录,-- ignore-fail-on-non-empty可以将标志传递给 rmdir。

例如,运行 rmdir--ignore-fail-on-non-empty hello将删除 hello 目录,尽管它不是空的。

QILE4pb42NKSHyTcaMva1GqQV5Jc0LIUVD1d
删除不为空的hello文件夹

7.清除

Clear 命令清除 shell 并删除所有以前的输出。当您想要清除终端上的杂乱时,它会派上用场。

8.纳米

Nano 是一个基于终端的文本编辑器,可用于创建和编辑文本文件以及编辑配置文件。它类似于任何其他文本编辑器,如记事本,唯一的区别是它通过 shell 工作并且没有 GUI。它预装了大多数 Linux 发行版。
在 shell 中运行nano会打开 nano 文本编辑器并提供一个可以输入文本的界面。

zq8NxPxsqyD9POpd6kN4h9paPhYWdnwQ80rj
Nano 在 Linux 终端中运行

要退出 nano,请按CTRL+X,它会询问您是否要保存文件。

h0-TOHFeaAS-YS4wbvHHGygujfasDRHtXxIP
按“Y”将保存文件。

如果您按“Y”,它会要求您输入文件名,输入名称后按“ENTER”将关闭 nano。将在当前目录中创建一个具有您指定名称的文件。

zFnHFjfM12jMK4exVqKDWuhAd7XT-3OS94Lp
将文件另存为 testfile.txt

9.猫

cat 命令用于在 shell 控制台上打印文件的内容,它主要用于当您想查看文件中存在的内容时。要使用 cat 命令,cat filename可以在 shell 中运行,它会在屏幕上输出文件的内容。

TwM-2qx7s6pXkSKhI6fmQJGFBTfCspCsA5c4
对先前创建的文本文件运行 cat 命令。

10. RM

Remove(rm) 命令类似于rmdir命令,但它删除文件而不是目录。要使用此命令,rm filename可以在 shell 中运行。如果文件存在于当前目录中,它将删除该文件。

8OHhC5Y-oTjhX16iw0xJtByyGtUHJZLlCDGD
删除之前创建的文本文件。

11. mv(奖励命令)

mv 命令可用于移动或重命名文件。重命名只是将文件移动到另一个名称。mv 命令的格式为mv source destination. 如果源和目标位于当前工作目录之外,则需要提供到源和目标的完整路径。

2gb8qFl079Dpdp-evt5JxeiIta2JOmhSvEar

要记住的旁注和要点:

  • Linux shell 区分大小写,因此“桌面”和“桌面”的含义不同。
  • 在 Linux 中写入路径时应小心,因为“boot”和“/boot”是两个不同的文件夹。
  • 掌握 Linux shell 的唯一方法是花时间在其中并每天使用它。如果您的主要操作系统是 Linux,这是一个额外的优势。
  • 你在 Linux 操作系统中所做的任何事情,都要尝试找到一种方法来做同样的事情,但要在 shell 中。Stack Overflow是回答您的 Linux 问题的好地方。
  • 如果你真的想磨练自己的 Linux 技能并成为一名 Linux 大师,那么你可以阅读Linux 圣经,这是有史以来最深入的 Linux 指南。

结论:

我第一次接触 Linux 终端是在 5 年前,我也被它吓到了。这五年来,我每天都在学习有关 Linux 的新知识。您在学习 Linux 时所花费的精力和时间是完全值得的,而且永远不会白费。Linux 是最大和最古老的开源项目,学习它是为它做出贡献的第一步。

原文:https://www.freecodecamp.org/news/a-beginners-guide-to-surviving-in-the-linux-shell-cda0f5a0698c/

相关新闻

历经多年发展,已成为国内好评如潮的Linux云计算运维、SRE、Devops、网络安全、云原生、Go、Python开发专业人才培训机构!