Ubuntu 命令全解析
在 Ubuntu 系统中,掌握各类命令是高效使用和管理系统的关键。本文将详细介绍一系列常用的 Ubuntu 命令及其使用方法。
1. 文件与系统信息查看命令
- tail :用于查看文件的末尾内容。例如:
jaskiran@jaskiran-VirtualBox:~/Desktop/new_directory$ tail text_file.txt
6
7
8
9
10
11
12
13
14
15
-
uname
:显示系统信息。
-
uname:显示内核名称,如Linux。 -
uname -a:显示详细的系统信息,如:
-
jaskiran@jaskiran-VirtualBox:~/Desktop/new_directory$ uname -a
Linux jaskiran-VirtualBox 5.11.0-43-generic
#47~20.04.2-Ubuntu SMP
Tue Dec 14 11:06:56 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
2. 软件包管理命令
- apt-get update :更新软件包列表,但不更新软件。此命令需要 root 权限。示例:
jaskiran@jaskiran-VirtualBox:~$ apt-get update
Reading package lists... Done
E: Could not open file /var/lib/apt/lists/lock - open
(13: Permission denied)
E: Unable to lock directory /var/lib/apt/lists/
W: Problem unlinking the file /var/cache/apt/pkgcache.bin - RemoveCaches (13: Permission denied)
W: Problem unlinking the file /var/cache/apt/srcpkgcache.bin - RemoveCaches (13: Permission denied)
-
sudo apt-get update
:从配置的源下载软件包信息,源定义在
/etc/apt/sources.list文件和/etc/apt/sources.list.d/目录下的其他文件中。 -
apt-get upgrade
:下载并更新已安装的软件,但不安装或移除其他额外软件包。若该命令不起作用,可尝试
sudo apt upgrade。示例:
jaskiran@jaskiran-VirtualBox:~$ sudo apt upgrade
[sudo] password for jaskiran:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
The following packages will be upgraded:
alsa-ucm-conf ghostscript ghostscript-x gir1.2-
mutter-6 gir1.2-udisks-2.0
gnome-control-center gnome-control-center-data
gnome-control-center-faces
gnome-shell-extension-desktop-icons libasound2
libasound2-data
libatopology2 libfprint-2-2 libfprint-2-tod1 libgs9
libgs9-common
libmbim-glib4 libmbim-proxy libmm-glib0
libmutter-6-0………………
-
apt-get dist-upgrade
:是
apt-upgrade命令的改进版本,除了升级现有软件包外,还会根据依赖关系安装和移除软件包。示例:
jaskiran@jaskiran-VirtualBox:~/Desktop$ sudo apt-get
dist-upgrade
[sudo] password for jaskiran:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
The following packages were installed and are no
longer required:
linux-headers-5.11.0-27-generic
linux-hwe-5.11-headers-5.11.0-27
linux-image-5.11.0-27-generic
linux-modules-5.11.0-27-generic
- apt-get install :下载并安装新的软件包。例如,安装 Gimp 图像编辑软件:
sudo apt-get install gimp
安装 Opera 浏览器稳定版:
sudo apt-get install opera-stable
或使用 snap 安装:
snap install opera
- apt-get remove :从系统中移除软件。例如,移除 Opera 浏览器:
sudo apt-get remove opera-stable
或使用 snap 移除:
snap remove opera
- apt-get -f install :用于修复软件安装过程中因下载问题或依赖关系导致的安装失败。示例:
jaskiran@jaskiran-VirtualBox:~/Desktop$ Sudo apt-get
-f install
Reading package lists... Done
Building dependency tree....Done
Reading state information... Done
The following packages were installed and are no
longer required:
linux-headers-5.11.0-27-generic
linux-hwe-5.11-headers-5.11.0-27
linux-image-5.11.0-27-generic
linux-modules-5.11.0-27-generic
linux-modules-extra-5.11.0-27-generic
Use ‘sudo apt autoremove’ to remove.
0 upgraded, 0 installed, 0 to remove and 0 not
upgraded.
- sudo apt-get install “package-name” – reinstall :重新安装软件包。例如,重新安装 Opera 浏览器:
sudo apt-get install opera-stable – reinstall
3. 用户管理命令
-
adduser
:用于向当前系统添加新用户,并允许修改待创建用户的配置,比
useradd命令更具交互性。在 Debian/Ubuntu 系统中安装adduser工具:
sudo apt-get install adduser
- passwd :用于更改用户账户密码。root 用户可以更改任何用户的密码,普通用户只能更改自己的账户密码。语法:
passwd [options] [username]
4. 帮助与信息查看命令
-
man
:查看系统参考手册。例如,查看
ls命令的手册:
jaskiran@jaskiran-VirtualBox:~/Desktop$ man ls
LS(1) User Commands LS(1)
NAME
ls - list directory contents
SYNOPSIS
ls [OPTION]... [FILE]...
DESCRIPTION
It lists information about the FILEs (the current
directory by default).
It sorts entries alphabetically if none of -cftuvSUX
nor --sort is speci‐
fied.
It is mandatory arguments to long options are
mandatory for short options
too.
-a, --all
It do not ignore entries starting with.
-A, --almost-all
do not list implied. and..
--author
with -l, print the author of each file
-b, --escape
print C-style escapes for nongraphic characters
man
命令的常用选项:
| 选项 | 功能 |
| ---- | ---- |
| man -aw | 列出命令的所有可用章节 |
| man -a | 查看命令的所有手册页 |
| sman -k | 显示包含关键字匹配的手册页结果列表 |
| -f, whatis | 显示手册页中的描述(如果可用) |
| whereis | 确定手册页的位置 |
5. 日期与日历命令
-
date
:显示系统日期和时间,也可用于设置系统日期和时间。默认显示操作系统配置时区的日期。更改日期和时间需要 root 权限。
-
date:显示当前日期和时间。示例:
-
jaskiran@jaskiran-VirtualBox:~/Desktop$ date
Wednesday 05 January 2022 02:57:41 PM IST
- `date -u`:显示 GMT/UTC 时区的时间。示例:
jaskiran@jaskiran-VirtualBox:~/Desktop$ date -u
Wednesday 05 January 2022 09:30:57 AM UTC
- `date -d`:操作系统在特定日期。示例:
jaskiran@jaskiran-VirtualBox:~/Desktop$ date -d now
Wednesday 05 January 2022 04:24:14 PM IST
jaskiran@jaskiran-VirtualBox:~/Desktop$ date -d
last-Sunday
Sunday 02 January 2022 12:00:00 AM IST
-
cal
:查看日历。
-
cal:显示当前月份的日历,当前日期会高亮显示。示例:
-
jaskiran@jaskiran-VirtualBox:~/Desktop$ cal
January 2022
Su Mo Tu We Th Fr Sa
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31
- `cal -y`:显示当前年份的日历,当前日期会高亮显示。
- `cal [month] [year]`:显示指定月份和年份的日历。示例:
jaskiran@jaskiran-VirtualBox:~/Desktop$ cal 11 1998
November 1998
Su Mo Tu We Th Fr Sa
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
6. 网络与文件操作命令
- wget :非交互式网络下载器,用于从服务器下载文件,可跟随 HTML 和 XHTML 页面中的链接并创建远程网站的本地版本,设计用于在慢速或不稳定网络连接下保持健壮性,可在用户未登录时在后台工作,支持 FTP、HTTP、HTTPS 协议以及 HTTP 代理检索。语法:
wget [option] [URL]
例如:
wget https://download.virtualbox.org/virtualbox/6.1.26/VirtualBox-6.1.26-145957-Win.exe
- ping :检查主机与服务器/主机之间的网络连接性。输入 IP 地址或 URL,发送包含 “PING” 消息的数据包,并从服务器/主机获取响应。示例:
jaskiran@jaskiran-VirtualBox:~/Desktop$ ping -V
ping from iputils s20190709
-
clear
:清除终端屏幕,类似于其他操作系统中的
cls命令。语法:
clear
-
exit
:退出当前运行的 shell。可接受一个参数
[N],并以状态 N 退出 shell。若未提供n,则返回最后执行命令的状态。
exit [n]
exit –help
可显示帮助信息。
-
uptime
:显示系统运行时长,结果包括当前时间、系统运行时间、当前登录用户数量以及过去 1、5 和 15 分钟的系统负载。语法:
uptime
示例:
jaskiran@jaskiran-VirtualBox:~/Desktop$ uptime
16:26:42 up 4:34, 1 user, load average: 0.19, 0.10,
0.06
- w :显示当前登录系统的用户详细信息。示例:
jaskiran@jaskiran-VirtualBox:~/Desktop$ w
16:30:07 up 4:37, 1 user, load average: 0.01, 0.06,
0.05
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
jaskiran :0 :0 10:04 ?xdm? 12:09 0.03s /usr/lib/gdm3/
- shutdown :用于关闭系统。语法:
shutdown
-
mv
:有两种用途:
- 移动文件或目录到系统中的另一个路径。语法:
mv Source_File Destination_File
示例:
jaskiran@jaskiran-VirtualBox:~/Desktop$ touch file1
jaskiran@jaskiran-VirtualBox:~/Desktop$ mkdir folder1
jaskiran@jaskiran-VirtualBox:~/Desktop$ touch file2
jaskiran@jaskiran-VirtualBox:~/Desktop$ mv file1 folder1
jaskiran@jaskiran-VirtualBox:~/Desktop$ cd folder1
jaskiran@jaskiran-VirtualBox:~/Desktop/folder1$ ls
file1
- 更改文件或文件夹的名称。
-
cp
:用于将数据从源文件复制到目标文件,类似于
mv。语法:
cp source_file_name destination_file_name
示例:
jaskiran@jaskiran-VirtualBox:~/Desktop/folder1$ cat
file1
First file data
jaskiran@jaskiran-VirtualBox:~/Desktop/folder1$ cat
fil2
cat: fil2: No such file or directory
jaskiran@jaskiran-VirtualBox:~/Desktop/folder1$ cat
file2
Second file data
jaskiran@jaskiran-VirtualBox:~/Desktop/folder1$ cp
file1 file2
jaskiran@jaskiran-VirtualBox:~/Desktop/folder1$ cat
file2
First file data
- echo :显示作为参数传递的任何表达式。语法:
echo expression
示例:
jaskiran@jaskiran-VirtualBox:~/Desktop/folder1$ echo
“Demo content”
Demo content
- grep :在指定文件/文件夹中搜索文本。语法:
grep “expression_to_be_Searched” file_name_to_search_in
示例:
jaskiran@jaskiran-VirtualBox:~/Desktop/folder1$ cat
file1
First file data
jaskiran@jaskiran-VirtualBox:~/Desktop/folder1$ grep
“file” file1
First file data
若文本存在于文件内容中,将以红色高亮显示。
-
unzip
:解压缩
.zip
文件并将其中的所有文件提取到当前目录。语法:
unzip file_name.zip
例如:
unzip Files.zip
- history :显示用户会话开始以来执行的所有命令列表。语法:
history
示例:
jaskiran@jaskiran-VirtualBox:~/Desktop/folder1$
history
1 wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
2 sudo snap install vlc
3 sudo snap install atom-classic
4 sudo snap install atom
5 sudo apk install atom
6 sudo apt install atom
7 sudo apt install atom-classic
8 sudo snap install atom --classic
9 clear
10 sudo snap install atom --classic
11 sudo snap install gimp
12 sudo apt install franz
13 sudo apt install franz_.5.7.0_and64.deb
14 sudi -h
15 sudo -h
16 whoami
- whereis :显示特定内置 Linux 命令的软件包所在路径。示例:
jaskiran@jaskiran-VirtualBox:~/Desktop/folder1$
whereis zip
zip: /usr/bin/zip /usr/share/man/man1/zip.1.gz
- whatis :显示特定内置 Linux 命令的功能简要描述。示例:
jaskiran@jaskiran-VirtualBox:~/Desktop/folder1$ whatis
cat
cat - it concatenate files and print on the standard
output
7. 文件权限命令
- ls -l :查看文件权限。示例:
jaskiran@jaskiran-VirtualBox:~$ ls -l
total 87304
drwxr-xr-x 3 jaskiran jaskiran 4096 Jan 5 16:41
Desktop
drwxr-xr-x 2 jaskiran jaskiran 4096 Dec 28 10:38
Documents
drwxr-xr-x 2 jaskiran jaskiran 4096 Dec 28 10:38
Downloads
-rw-rw-r-- 1 jaskiran jaskiran 0 Jan 5 10:59 fil1.txt
-rw-rw-r-- 1 jaskiran jaskiran 0 Jan 5 10:59 fil2.txt
-rw-rw-r-- 1 jaskiran jaskiran 89348996 Dec 12 14:00
google-chrome-stable_current_amd64.deb
drwxr-xr-x 2 jaskiran jaskiran 4096 Dec 28 10:38 Music
drwxr-xr-x 2 jaskiran jaskiran 4096 Dec 28 10:38
Pictures
drwxr-xr-x 2 jaskiran jaskiran 4096 Dec 28 10:38
Public
drwx------ 11 jaskiran jaskiran 4096 Jan 4 11:47 snap
drwxrwxr-x 3 jaskiran jaskiran 4096 Dec 31 22:31 Steam
drwxr-xr-x 2 jaskiran jaskiran 4096 Dec 28 10:38
Templates
drwxrwxr-x 2 jaskiran jaskiran 4096 Jan 4 17:05 Ubuntu
drwxr-xr-x 2 jaskiran jaskiran 4096 Dec 28 10:38
Videos
用户类型:
- 所有者(Owner):拥有文件的用户。
- 组(Group):属于用户组的用户。
- 其他(Others):除所有者和组成员之外的用户。
用户权限:
| 权限 | 含义 |
| ---- | ---- |
| read (r) | 用户只能读取或查看文件 |
| write (w) | 用户可以编辑或删除文件 |
| execute (x) | 用户可以运行文件 |
权限用字符或 “–” 表示,“–” 表示用户没有该权限。
- chmod :用于更改文件的访问模式。语法:
chmod {users options} {operator} {permission} {filename}
运算符:
-
+
:添加权限。
-
-
:移除权限。
-
=
:指定明确的权限。
权限表示方法:
- 使用符号(字母数字字符)。
- 八进制数字(0 到 7)。
例如,设置文件
myfile
的权限,使所有者可以读、写、执行,组成员可以读、执行,其他用户只能读:
chmod u=rwx,g=rx,o=r myfile
八进制数字 7、5、4 分别代表用户、组和其他用户的权限,每个数字是 4、2、1、0 的组合。
通过掌握这些 Ubuntu 命令,用户可以更加高效地管理和使用 Ubuntu 系统,满足不同的操作需求。无论是软件安装、用户管理还是文件操作,这些命令都提供了强大而灵活的功能。
Ubuntu 命令全解析
8. 命令总结与使用建议
为了更清晰地了解各个命令的用途和语法,下面将常用的 Ubuntu 命令进行总结:
| 命令 | 用途 | 语法 | 示例 |
| ---- | ---- | ---- | ---- |
| tail | 查看文件末尾内容 |
tail [文件名]
|
tail text_file.txt
|
| uname | 显示系统信息 |
uname
或
uname -a
|
uname -a
|
| apt-get update | 更新软件包列表 |
apt-get update
|
apt-get update
|
| sudo apt-get update | 从配置源下载软件包信息 |
sudo apt-get update
|
sudo apt-get update
|
| apt-get upgrade | 更新已安装软件 |
apt-get upgrade
|
sudo apt upgrade
|
| apt-get dist-upgrade | 升级并处理依赖包 |
apt-get dist-upgrade
|
sudo apt-get dist-upgrade
|
| apt-get install | 安装软件包 |
apt-get install <PACKAGE-NAME>
|
sudo apt-get install gimp
|
| apt-get remove | 移除软件包 |
apt-get remove <PACKAGE-NAME>
|
sudo apt-get remove opera-stable
|
| apt-get -f install | 修复安装问题 |
apt-get -f install
|
Sudo apt-get -f install
|
| sudo apt-get install “package-name” – reinstall | 重新安装软件包 |
sudo apt-get install “package-name” – reinstall
|
sudo apt-get install opera-stable – reinstall
|
| adduser | 添加新用户 |
adduser
|
sudo apt-get install adduser
|
| passwd | 更改用户密码 |
passwd [options] [username]
|
passwd jaskiran
|
| man | 查看命令手册 |
man [命令名]
|
man ls
|
| date | 显示或设置日期时间 |
date [OPTION] [+FORMAT]
|
date -u
|
| cal | 查看日历 |
cal [[month] year]
|
cal 11 1998
|
| wget | 下载文件 |
wget [option] [URL]
|
wget https://download.virtualbox.org/virtualbox/6.1.26/VirtualBox-6.1.26-145957-Win.exe
|
| ping | 检查网络连接 |
ping [IP 地址或 URL]
|
ping -V
|
| clear | 清除终端屏幕 |
clear
|
clear
|
| exit | 退出 shell |
exit [n]
|
exit
|
| uptime | 显示系统运行时长 |
uptime
|
uptime
|
| w | 显示登录用户信息 |
w
|
w
|
| shutdown | 关闭系统 |
shutdown
|
shutdown
|
| mv | 移动或重命名文件/目录 |
mv Source_File Destination_File
|
mv file1 folder1
|
| cp | 复制文件 |
cp source_file_name destination_file_name
|
cp file1 file2
|
| echo | 显示表达式 |
echo expression
|
echo “Demo content”
|
| grep | 搜索文本 |
grep “expression_to_be_Searched” file_name_to_search_in
|
grep “file” file1
|
| unzip | 解压缩 .zip 文件 |
unzip file_name.zip
|
unzip Files.zip
|
| history | 显示命令历史 |
history
|
history
|
| whereis | 显示命令所在路径 |
whereis [命令名]
|
whereis zip
|
| whatis | 显示命令功能描述 |
whatis [命令名]
|
whatis cat
|
| ls -l | 查看文件权限 |
ls -l
|
ls -l
|
| chmod | 更改文件访问模式 |
chmod {users options} {operator} {permission} {filename}
|
chmod u=rwx,g=rx,o=r myfile
|
在使用这些命令时,建议遵循以下几点:
-
权限问题
:许多命令需要 root 权限才能执行,如软件包管理命令和系统设置命令。在执行这些命令时,使用
sudo
前缀,并输入管理员密码。
-
备份重要数据
:在进行系统更新、软件安装或文件操作时,可能会出现意外情况导致数据丢失。因此,在执行这些操作之前,建议备份重要的数据。
-
仔细阅读手册
:对于不熟悉的命令,建议先使用
man
命令查看其手册,了解命令的详细用法和选项。
9. 命令使用流程示例
下面通过一个具体的示例,展示如何使用这些命令完成一系列操作。假设我们要在 Ubuntu 系统上安装和配置一个开发环境,具体步骤如下:
graph TD;
A[更新软件包列表] --> B[安装开发工具];
B --> C[创建工作目录];
C --> D[下载项目文件];
D --> E[解压项目文件];
E --> F[配置项目依赖];
F --> G[启动项目];
- 更新软件包列表 :
sudo apt-get update
- 安装开发工具 :例如,安装 Python 开发环境和 Git 版本控制工具。
sudo apt-get install python3 python3-pip git
- 创建工作目录 :
mkdir ~/development
cd ~/development
- 下载项目文件 :假设项目文件托管在 GitHub 上。
git clone https://github.com/example/repo.git
- 解压项目文件 :如果项目文件是压缩文件。
unzip project.zip
- 配置项目依赖 :使用 pip 安装项目所需的 Python 包。
pip3 install -r requirements.txt
- 启动项目 :根据项目的启动脚本启动项目。
python3 main.py
10. 常见问题及解决方法
在使用 Ubuntu 命令的过程中,可能会遇到一些常见的问题,下面为你提供相应的解决方法:
-
权限不足
:当执行某些命令时,可能会收到 “Permission denied” 错误。这通常是因为没有足够的权限执行该命令。解决方法是使用
sudo
前缀以管理员权限执行命令。
-
软件安装失败
:软件安装失败可能是由于网络问题、依赖关系错误或软件源配置问题。可以尝试以下方法解决:
- 检查网络连接,确保可以正常访问软件源。
- 使用
apt-get -f install
命令修复依赖关系问题。
- 检查
/etc/apt/sources.list
文件和
/etc/apt/sources.list.d/
目录下的文件,确保软件源配置正确。
-
命令找不到
:如果执行某个命令时提示 “command not found”,可能是该命令没有安装或者没有在系统的 PATH 环境变量中。可以尝试以下方法解决:
- 使用
apt-get install
命令安装该命令对应的软件包。
- 检查 PATH 环境变量,确保命令所在的目录已经添加到 PATH 中。
11. 总结
通过本文的介绍,我们详细了解了 Ubuntu 系统中常用的命令,包括文件与系统信息查看、软件包管理、用户管理、帮助与信息查看、日期与日历、网络与文件操作以及文件权限等方面的命令。这些命令为用户提供了强大而灵活的功能,能够满足不同的操作需求。
在使用这些命令时,需要注意权限问题、备份重要数据,并仔细阅读命令手册。同时,通过具体的示例和常见问题的解决方法,希望能够帮助你更好地掌握和使用这些命令,提高在 Ubuntu 系统上的工作效率。
无论是初学者还是有经验的用户,都可以通过不断练习和实践,熟练掌握这些命令,从而更加高效地管理和使用 Ubuntu 系统。
超级会员免费看
2099

被折叠的 条评论
为什么被折叠?



