Linux 操作系统看起来很复杂,命令行可能会让你想起需要专业知识才能操作的编程过程。
但别担心。我们先从 15 个 基础 Linux 命令 开始,帮助初学者快速熟悉这个流行的开源界面。
在进入每位 Linux 用户应该知道的 15 个命令列表之前,你可能想了解命令在大多数发行版中的重要性。这就是为什么第一部分介绍一些基础定义和解释。
There is also a 16th command 我认为这个应该在这里,或者可能是第 0 个命令,因为它可能比其他命令更重要: apt。它的主要作用是在许多 Linux 发行版(包括 Debian 和 Ubuntu)中安装和删除软件包。如果你的操作系统配有 GUI,你可以通过点击几个屏幕来替代这 15 个命令中的大部分。但改变不了的一点是,大多数软件包需要从终端安装,这需要用到 apt。你的 Linux 没有 GUI 桌面?没关系:可以查看我的指南 如何在 Ubuntu 服务器上安装 GUI,你也会看到 apt 有多重要!
Linux 主机服务简化版
想要更好的方式来托管网站和网络应用?正在开发新项目?或者只是不喜欢 Windows?这就是我们提供 Linux VPS 的原因。
获取你的 Linux VPS你应该知道的最基础 Linux 命令
大多数人认为 Linux 是一个复杂的操作系统,只有程序员才会用。但实际上没那么难。随着你对这个开源操作系统及其发行版的深入了解,你会发现 Linux 命令其实是个易于使用的界面,可以帮助用户管理、故障排查,甚至优化操作系统和应用程序。
众所周知,这个 命令行界面 (CLI是设备上的文本用户界面 (UI),可以执行几乎所有必需的任务(通常是一个黑色背景、白色文字的框,也称为命令行处理器或命令行解释器)。
Linux 最流行的命令行界面类型之一是 bash (Bourne Again Shell) shell,它支持原始 Bourne Shell 的所有命令以及许多其他命令。它是作为 Bourne shell 的免费开源替代品编写的,包含命令行编辑、命令历史和来自以下工具的命令替换语法等功能 Korn shell (KSH)和 C shell(CSH)。它还支持用于生成文本字符串的大括号扩展。
Also Read: 在 Windows 10 上安装 Linux bash!
由于 bash 的开放性,大多数 Linux 发行版、Apple 的 macOS 的所有版本、Windows Subsystem for Linux 和 Solaris 操作系统都将其作为默认用户 shell。要在 Linux 上打开 bash shell,只需从桌面应用菜单启动终端并开始 shell 脚本编写。(请记住,根据系统管理员的设置方式,你可以更改默认 shell)。打开终端时,它会显示一个提示符让你输入代码。
✅现在是时候学习一些 Linux 命令了。下面列出了所有 Linux 基本命令及示例 每个 Linux 用户都应该了解:
Note 1: 典型的命令语法可能是这样的:
command [-argument] [ - - long-argument] file
Note 2: Linux shell 中的命令、文件和目录名区分大小写,这意味着 PWD 会打印当前工作目录,但 pwd 会返回以下错误:
Bash: PWD: command not found
Note 3: 文件扩展名不重要,这意味着在 Linux CLI 中,文件类型会自动确定。
Note 4: the
/
(正斜杠)是用于目录分隔的特殊字符?
Note 5: 几乎所有 Linux 命令都支持 --help 参数,可以在你使用命令行界面时提供帮助。
- - help
Note 6: $ 符号是提示符,表示 shell 正在等待输入,出现在本文中每条命令的前面。
$
Also Read: 通过命令行查找操作系统版本
1- ls command
如果你想列出 Linux 操作系统的文件系统中的文件或目录,那么 ls 命令(List 的缩写)就是解决方案。使用此命令,你有多种选项,如下表所示:
| Option | Description |
| ls ~ | 显示主目录的内容 |
| ls ../ | 它显示父目录的内容 |
| ls –version | 它检查 ls 命令的版本 |
| ls -a | 列出所有文件,包括以'.'开头的隐藏文件 |
| ls –color | 彩色列表 [=always/never/auto] |
| ls -d | 列出目录 – 使用 ' */' |
| ls -F | Shows file types (“/” = directory, “*” = executable) |
| ls -li | 如果文件是第一列,那么这个命令会打印索引号 |
| ls -l | 列表显示详细信息(权限、大小、所有者和修改日期) |
| ls -laF | 列出长格式,包括隐藏文件 |
| ls -lh | 长格式列表,显示文件大小,使用易读的文件单位(KB、MB、GB) |
| ls -ls | 以长格式列出文件,按文件大小降序排列 |
| ls -r | 按相反顺序列出 |
| ls -R | 递归列出目录树 |
| ls -s | 列出文件大小 |
| ls -S | 按文件大小排序 |
| ls -t | 按修改时间排序 — 这样会打开你最后编辑的文件 |
| ls -X | 按扩展名排序 |
2- pwd command
As we mentioned,
$ pwd [option]
是基础 Linux 命令速查表之一。它可以轻松打印从根目录开始的当前工作目录。该命令有两个标志:
Pwd –L
显示当前工作目录的逻辑路径,包含符号链接名称。
Pwd –P
显示当前工作目录的实际物理路径,不包括符号链接名称。
Linux 主机服务简化版
想要更好的方式来托管网站和网络应用?正在开发新项目?或者只是不喜欢 Windows?这就是我们提供 Linux VPS 的原因。
获取你的 Linux VPS3- alias
使用这个命令可以为另一个命令(或一组命令)创建快捷方式或别名,这样就不用重复输入长命令了。当你频繁使用某个命令时,别名命令特别有用。它通过创建一个自定义命令来节省你的时间,可以在执行命令时用一个短字符串替换原来的长字符串。这个快捷方式可以多次使用。我们把这样的快捷方式称为命令别名。
此命令的语法为:
alias [-p] [name [=value] …]
或者,可以是这样的:
alias alias_name="command_to_run"
4- cd command
这个命令会在 Linux 和其他类 Unix 操作系统中更改你的当前目录。也就是说,cd(change directory 的缩写) Change Directory) 命令是最常用的命令之一,也是 Linux 终端上的基础 Linux 命令之一。该命令的语法为:
cd [options] directory
这是使用该命令的几个示例:
假设 Downloads 目录存在于你的主目录中。使用以下代码,你可以直接进入该目录:
cd Downloads
你也可以使用绝对路径进入该目录:
cd /home/username/Downloads
如你所见,(/) 符号表示目录的绝对路径。你也可以从当前目录向上返回一层或多层。假设你当前在
/home/username/Downloads
目录中,要切换到
/home/username
目录(向上一层),你需要输入:
cd . ./
这个命令将你从当前目录向上返回一层。
/home
要向上返回两层进入该目录,你可以运行以下代码:
cd . ./ . ./
你也可以使用破折号作为 cd 命令的参数来返回到上一个工作目录,具体如下:
cd -
或者使用波浪号 (~) 进入主目录,如下所示:
cd ~
例如,如果你要从
/home/username/Downloads
directory to the
/home
目录进入
cd ~/Downloads
Note: 如果选定的目录名称中包含空格,你应该使用反斜杠 (\) 转义该空格,如下所示:
cd Dir\beta\router\hosting
5-mv command
这个命令用于将一个或多个文件或目录从一个位置移动到另一个位置。以下是这个 Linux 基础命令的语法及几个例子:
mv [option] SOURCE DESTINATION
The SOURCE 可以是一个或多个目录或文件,而 DESTINATION 必须是单个目录或文件。要移动目录或文件,你需要对 SOURCE and DESTINATION有写入权限。否则,你会收到权限被拒绝的错误。
如果你只想重命名文件,输入以下语法:
mv [filename] [new_filename]
For example:
mv names.txt fullnames.txt
同样,如果你想将文件移动到新位置,使用以下语法:
mv [filename] [dest-dir]
For example:
mv fullnames.txt /home/routerhosting1/Downloads
你可以使用 mv 命令行选项强制 –i 命令进行提示:
mv -i [filename] [new_filename]
这个语法会导致 mv 在覆盖现有文件之前请求用户权限。
Linux 主机服务简化版
想要更好的方式来托管网站和网络应用?正在开发新项目?或者只是不喜欢 Windows?这就是我们提供 Linux VPS 的原因。
获取你的 Linux VPS6- cat command
The cat (concatenate 的缩写)命令是最常用的基础 Linux 命令之一,允许用户创建单个或多个文件、合并文件、查看文件内容,以及将输出重定向到文件或终端。该命令的典型语法如下:
cat [option] [file] . . .
Example:
cat /123456/test/file01/123456/test/file02
下表显示了 cat 命令的主要选项:
| option | description |
| cat test | 显示文件内容 |
| cat test1 test2 | 显示 test1 和 test2 的内容 |
| cat test1; teat2; test3 | 同时显示多个文件 |
| cat -b | 为非空行添加行号 |
| cat -n filename | 显示内容并为所有行添加行号 |
| cat -s | 将连续空行压缩为一行 |
| cat -e | 在行末显示 $。Good 用于将多行压缩为一行 |
| cat –T test | 用 ^I 替代制表符 |
| cat test1 teat2 test3 > test4 | 将多个文件的内容重定向到一个文件中 |
| cat > test1 | 将创建一个名为 test1 的文件 |
| cat test1 >> test2 | 将一个文件的内容追加到另一个文件的末尾 |
7- cp command
The cp 命令是 COPY. 此命令可以复制单个或多个文件或目录。其参数中至少需要两个文件名。该命令的语法如下:
cp [option] Source Destination cp [option] Source Directory cp [option] Source-1 Source-2 Source-3 Source-n Directory
第一和第二种语法用于将源文件复制到目标位置或目录。第三种语法用于将多个文件(源)复制到目录中。
Example 1:
cp file file-backup
此代码将复制一个名为 file.txt to file-backup.txt.
Example 2:
cp file1.txt dir file2.txt dir
此代码将同时复制多个文件和目录。在这种情况下,目标必须是一个目录。
8- mkdir command
此 Linux 命令允许用户创建新目录。使用 mkdir 命令,您还可以设置权限并一次创建多个文件夹。创建单个目录的命令语法如下:
mkdir [option] dir-name
Example:
mkdir test-dir
此命令将创建一个名为 test 的新目录。如果您想一次创建多个目录,请使用以下语法:
mkdir {test1, test2, test3}
9- rmdir command
我们提供的 Linux 基础命令列表中的另一个命令是 rmdir 它允许您从 Linux 文件系统中删除空目录。该命令的语法如下:
rmdir [-p] [-v ǀ -verbose] [-ignore – fail – on – non – empty] directories …
Options:
In the
rmdir –p
each of directories
Example:
rmdir mydir1 mydir2 mydir3
In this example, mydir1, mydir2, and mydir3 如果目录为空,将被删除。如果任何目录不为空,系统会为该目录打印错误消息,其他目录则不会被删除。
Options:
- rmdir –p:在此选项中,每个目录参数都被视为将被删除的路径名。如果目录为空,最后一个组件将启动。
- rmdir –v, -verbose:此选项可以显示正在处理的每个目录的详细信息。
- rmdir -ignore-fail-on-non-empty: 如果目录不为空,该选项不会报告任何错误信息。
- rmdir –version:此选项用于显示版本信息并退出。
Also Read: 如何在 Linux 中删除目录?
10- rm command
当你需要删除目录及其内部的所有内容时, rm 命令是解决方案。但如果你只想删除目录,请使用 rm –r。语法大概是这样的:
rm [option] FILE
Example:
rm test.txt
此命令将永久删除 test.txt 目录。
11- Touch command
touch 命令是一个基础命令,可以让你创建一个新的空文件。
Syntax: touch file_name
touch
Example: touch /Home /username/Documents/Me.txt
此命令在目标地址(documents)中创建一个文本文件。 如果你需要在指定位置创建多个文件。
Syntax: touch File1_name File2_name File3_name
Options:
touch –a: 这个命令可以修改文件的访问时间。建议使用它来更新文件的最后访问时间
12- Locate command
Locate 命令在 Windows 中充当搜索工具。它是查找文件最简便的方式,即使你不知道确切的文件名也能搜索。
Syntax: locate [filename]
locate
Example:
Locate{ -i Book*note}
这个命令会找出包含 "book" 和 "note" 字样的文件,不区分大小写。
13- df command
The Df command stands for “Disk Free,” which gives you the system detail as a report, such as the amount of disk, space, and usage.
查看可用磁盘空间摘要时,你可以选择字节、兆字节或吉字节格式显示。
E.g.: MegaBytes:
df -m
Syntax:
- df
- df /dir
- df [选项] [/dev/DEVICE]
14- Kill command
Kill 命令可以强制关闭无响应的程序,但你也可以手动终止程序。
Syntax:
kill [signal option]
kill PID
Example:
kill 命令中最常用的两个信号如下:
SIGKILL:此信号强制立即终止所有程序,突然停止不会保存程序更改
SIGTERM这种信号会让程序停止运行,但与 SIGKILL 不同的是,它允许程序保存所有更改。
15 - useradd、userdel 命令
多用户操作系统(Linux)支持多个用户同时访问。因此需要创建多个用户来与系统交互。
Useradd: 此命令创建一个新用户,Passwd 用于为该用户账户设置密码。
语法:useradd [OPTIONS] USERNAME
Example:
useradd JohnSmith
Userdl删除用户账户意味着移除该用户及其文件。此命令的工作方式与创建用户类似,只是有轻微差异。
Syntax: userdel UserName
Example:
userdel JohnSmith
Options:
userdel –f此选项将强制删除用户。
userdel –r:此命令删除用户及其主目录、文件和邮件队列。
Example:
- userdel -f Jack
- userdel -r John
如何练习基础 Linux 命令?
无论你想在线测试/分析 shell 脚本,还是想练习基础 Linux 命令,首先都需要充分理解它们。为了练习,你可以使用 Windows Subsystem for Linux 在 Windows 中安装 Linux。你也可以使用在线 Linux 终端。有些网站提供在线 Linux 终端,让你在网络浏览器中运行常见的 Linux 命令,这样你可以测试或练习它们。
Conclusion
Linux 包含大量命令,但我们为你精选了最常用的命令。在本文中,我们用代码示例讲解了一些基础 Linux 命令。不过具体步骤可能因你使用的发行版而异,你可以查阅 Linux 帮助,或者留言让我们协助你。
FAQ
pwd 和 /bin/pwd 有什么区别?
The pwd 是 shell 内置命令,而 /bin/pwd 是随 Linux 发行版提供的工具。如果要运行独立程序而非 shell 内置命令,请使用 /bin/pwd.
如何在 Linux 中运行命令?
首先,从桌面的应用菜单中打开终端。然后找到 bash shell,这是大多数 Linux 发行版中的默认 shell。现在输入命令并按 Enter 键运行它。
CLI 是什么意思?
命令行界面(CLI)是一种基于文本的界面,用于输入和运行命令。在鼠标出现之前,它是与计算机交互的标准方式。每个 CLI 都有一个命令提示符用于接收命令。
命令行有什么用?
命令行的最大优势是它可以执行大量命令。这个界面帮助你输入可以传递给计算机操作系统并执行的命令。使用命令行,你还可以浏览设备上的文件和文件夹。
什么是 Linux 速查表?
Linux 命令有数百条,你可能需要了解其中许多。Linux 速查表可以帮助你轻松查找和记忆这些命令。这样的速查表可以显示与以下信息相关的命令:
- System information
- Hardware information
- 性能监控和统计
- 用户信息和管理
- 文件和目录命令
- Process management
- File permissions