Skip to content

Ubuntu - 命令行

Ubuntu 与其他基于 Linux 的操作系统一样,拥有强大的命令行界面 (CLI),也称为终端 (Terminal)。许多用户,尤其是开发者和系统管理员,更喜欢 CLI,因为它效率高、控制力强。本章介绍一些入门所需的基本命令。

打开终端:

  • 在键盘上按下 Ctrl+Alt+T。这是最快捷的快捷键。
  • 或者,点击“显示应用”图标(通常是停靠栏底部的网格状图标),搜索“终端”,然后点击终端图标启动。

你会看到一个带有提示符的窗口,通常显示你的用户名和当前目录 (current directory),例如 username@hostname:~$。你可以在这里输入命令。

ls 命令用于列出指定目录中的文件和目录。如果没有指定目录,则列出当前目录的内容。

ls [options] [directoryname]
  • 选项 (Options): 修改 ls 命令行为的标志 (Flags)。常用选项包括:
  • -l: 长格式列表 (Long listing format)(显示权限 (permissions)、所有者 (owner)、大小 (size)、修改日期 (modification date))。
  • -a: 显示所有文件,包括隐藏文件 (hidden files)(以点号 . 开头的文件)。
  • -h: 与 -l 结合使用,以人类可读格式 (human-readable format)(例如 1K、234M、2G)打印文件大小。
  • -t: 按修改时间排序 (Sort by modification time),最新的在前。
  • Directoryname(可选): 你想列出内容的目录。默认为当前目录。

命令输出文件和目录的列表。

列出当前目录的内容:

ls

以人类可读格式列出包含详细信息和隐藏文件在内的内容:

ls -lah

这会显示类似以下内容:

total 20K
drwxr-xr-x 5 user user 4.0K Jan 15 10:00 .
drwxr-xr-x 23 user user 4.0K Jan 14 09:00 ..
-rw-r--r-- 1 user user 123 Jan 15 09:30 .bash_history
-rw-r--r-- 1 user user 3.5K Jan 10 11:00 .bashrc
drwxr-xr-x 2 user user 4.0K Jan 12 16:00 Documents
-rw-rw-r-- 1 user user 675 Jan 11 14:20 script.sh

现代替代品如 exa 或 lsd 提供更多功能和颜色编码输出,但 ls 是普遍可用的。

clear 命令清除终端窗口中的所有历史命令和输出,提供一个干净的界面。你也可以使用快捷键 Ctrl+L。

clear

无。

终端屏幕被清空。

要获取命令的详细信息,使用 man (manual) 命令。它会显示指定命令的官方手册页 (manual page)。

man commandname

Commandname: 你需要帮助的命令名称。

命令的手册页,通常包括概要 (synopsis)、描述 (description)、选项 (options) 和示例 (examples)。按 q 退出 man 手册页查看器。

查看 ls 的手册页:

man ls

对于更快速、更注重示例的帮助,可以考虑安装和使用 tldr (Too Long; Didn’t Read,太长不看)。安装后(sudo apt install tldr),你可以输入:

tldr commandname

find 命令是一个强大的工具,用于根据名称 (name)、类型 (type)、大小 (size) 和修改时间 (modification time) 等各种条件搜索文件和目录。

find [path...] [expression]
  • Path: 开始搜索的目录(例如 ., /home/user)。
  • Expression: 搜索条件(例如 -name "pattern", -type f)。

符合条件的文件/目录列表。

在当前目录及其子目录中查找所有名为 report.txt 的文件:

find . -name "report.txt"

在你的主目录中查找所有在过去 24 小时内修改过的以 .log 结尾的文件:

find ~ -name "*.log" -mtime -1

一个现代的、用户友好的替代品是 fd(通常安装为 fdfind)。它语法更简单,通常也更快。示例:fd report.txt。

whoami 命令显示当前登录用户的用户名。

whoami

无。

当前用户的用户名,例如:

myuser

pwd 命令显示当前工作目录的完整路径名。

pwd

无。

当前目录的绝对路径 (absolute path),例如:

/home/myuser/Documents