CodeGym /课程 /Docker SELF /命令行基础 (CLI): 命令结构,终端操作

命令行基础 (CLI): 命令结构,终端操作

Docker SELF
第 1 级 , 课程 4
可用

命令行基础 (CLI): 命令结构,终端操作

1. 认识 Linux 命令行

为什么选择命令行?

在深入学习之前,让我们先回答一个主要问题:既然 Linux 上也有漂亮的图形界面,为什么还需要命令行呢?命令行(Command Line Interface, CLI)是一种专业工具,专为系统管理员和程序员设计。通过 CLI,你可以更快地完成任务,自动化执行重复操作,甚至在键盘上实现 "幕后魔法"。CLI 本质上是 Linux 世界中的超级能力,将让你更加高效。

终端、Shell 和 CLI

在输入第一个命令之前,让我们先了解一下终端背后的魔法是什么。

1. 终端

终端是一个程序,用于访问命令行。它让你可以通过文本与操作系统交互。在 Linux 中,以下是一些常用的终端:

  • GNOME Terminal (在 GNOME 上使用)。
  • Konsole (在 KDE 上使用)。
  • xterm (经典但老旧的选择)。
  • Windows Terminal 用于 WSL。

2. Shell (壳)

Shell 是一种软件,它解析命令并将其传递给操作系统。在 Linux 中,最流行的 Shell 是 Bash (Bourne Again Shell)。其他选择包括:

  • Zsh: 为定制爱好者设计的高级 Shell。
  • Sh: 经典的 Unix Shell(极简主义)。

我们将从 Bash 开始使用,因为它是标准。


2. 命令结构

CLI 中的命令有严格的格式,理解这一点是成功的关键。

命令的基本格式

每条命令由三部分组成:

[命令] [选项] [参数]
  • 命令:你希望系统执行的操作。例如,ls(显示文件列表)。
  • 选项(或 flags):修改命令的行为。例如,-l(详细列表形式显示 ls 的结果)。
  • 参数:你传递给命令的额外数据,例如文件或文件夹的路径。

示例:

ls -l /home

这里:

  • ls — 命令;
  • -l — 详细列表的选项;
  • /home — 参数(我们想查看内容的文件夹)。

3. 导航和 CLI 基本命令

我们从一些简单的命令开始,展示如何与系统交互。

1. 我是谁?我在哪?

  • whoami: 显示当前用户。

    $ whoami
    student
    
  • pwd (print working directory): 显示当前目录。

    $ pwd
    /home/student
    
重要!

在大多数 Unix/Linux 外壳程序中,$ 符号用作终端的提示符 (prompt)。它表示系统已准备好接受命令。符号 $ 用于区分用户需要输入的命令和这些命令的输出内容。

2. 看看周围

  • ls (list): 显示当前目录的内容。

      $ ls
      Documents  Downloads  Music
    

    有用的选项:

    • -l: 文件和文件夹的详细信息。
    • -a: 显示隐藏文件。

示例:

ls -la

3. 在文件夹间移动

  • cd (change directory): 允许在目录之间切换。
    $ cd /home
    $ pwd
    /home
    

4. 终端快捷键

命令行提供了一些非常方便的快捷键组合:

  • Ctrl+C: 中断当前命令的执行。
  • Ctrl+D: 结束当前会话。
  • Tab: 自动补全文件或文件夹。这是一个非常有用的功能——多用点。
  • Arrow Up/Down: 在最近的命令之间切换。

实践提示:如果你想感受一下“黑客”的感觉,试着按下Ctrl+C,同时把目光看向别处,这是完美的风格。


5. 简单命令示例:开始创造!

让我们创建一个简单的实践任务,并使用CLI来解决它。

任务:

  1. 查找当前用户。
  2. 进入主目录。
  3. 查看里面的内容。
  4. 创建一个文件夹test_folder
  5. 检查文件夹是否已创建。

解决方案:


# 查看当前用户
whoami

# 切换到主目录
cd ~

# 查看目录内容
ls

# 创建文件夹
mkdir test_folder

# 检查文件夹是否存在
ls -l

步骤解释:

  1. 使用命令whoami,我们检查了当前使用的是什么用户。
  2. 使用cd ~切换到了主目录。符号~总是指向当前用户的主目录。
  3. 命令ls显示了目录下的内容,既包括创建文件夹之前,也包括之后。

6. 常见错误及如何避免

使用命令行时总会遇到错误,尤其是在刚开始的时候。以下是一些常见的情况:

  • 文件/文件夹名称中的空格。如果你的名称包含空格,记得用引号将其括起来。例如:

    mkdir "My Folder"
    
  • 路径错误。如果你看到消息 No such file or directory,这意味着你指定的路径不存在。

    cd /unknown/path
    
  • 命令拼写错误。终端对错误很敏感:lss 代替 ls 是另一个命令(或者可能根本不存在)。


7. 为什么需要这些知识?

CLI 是一个管理任何系统的强大工具。它无处不在:从配置服务器到编写自动脚本。在面试时经常会问到通过终端完成任务的命令,因此现在掌握的知识将在你的工具箱中占有重要一席。

此外,CLI 能帮助你掌握版本控制系统,比如 git,开发服务器端应用,以及编写自动化脚本。一切都从理解基础开始,比如命令结构、在文件夹间切换以及基本快捷键的使用。

一些实践

试试以下任务:

  1. 获取当前日期。
  2. 创建一个文件夹 logs
  3. 在里面创建一个文件 log.txt,写入当前的日期。
示例解决方案

# 查看当前日期
date

# 创建 logs 文件夹
mkdir logs

# 将日期写入 log.txt 文件
date > logs/log.txt

# 检查文件内容
cat logs/log.txt

现在你已经准备好进入下一个阶段——操作文件系统及其内容!

评论
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION