Linux命令速查网站:https://linux.embeddev.asia
目前已经搜集了600+
条命令,对每一条命令都有详细的介绍。
本文展示的命令不全是安装系统时自带的。
Linux命令基于Unix哲学,旨在创建简单、短小、可组合的工具。每个命令通常只执行一个任务,但通过管道和重定向可以组合多个命令来完成复杂任务。Linux命令行工具一般用C语言编写。
- 可执行文件:很多Linux命令是独立的可执行文件,通常位于
/bin
、/usr/bin
、/sbin
等目录下。例如,ls
、cp
、grep
等。 - Shell内建命令:一些命令是Shell(如Bash、Zsh)的内建命令(built-in commands),它们直接由Shell解释执行,而不是独立的可执行文件。例如,
cd
、echo
、alias
等。 - 脚本:一些命令是用脚本语言(如Bash、Python等)编写的脚本文件。例如,某些系统管理工具和用户自定义命令。
使用 CTRL F
可在本页内搜索。
命令速览
- 一、文件管理
- 二、磁盘管理
- 三、磁盘维护
- 四、备份压缩
- 五、系统设置
- 六、系统管理
- 七、文本处理
- 八、设备管理
- 九、网络通信
- 十、电子邮件与新闻组
- 十一、文件传输
- 拓展:使用man命令查看帮助
以下每个分类仅仅是部分命令,Linux命令众多,即使是本文介绍的部分命令,也只有部分是常用的。
分类并不是严格的。
一、文件管理
命令 | 功能 |
---|---|
cat | 连接文件并打印到标准输出 |
chattr | 改变文件属性 |
chgrp | 改变文件的组 |
chmod | 改变文件模式 |
chown | 改变文件所有者和组 |
cksum | 计算并打印文件的 CRC 校验和字节数 |
cmp | 比较两个文件,如果不同则显示不同之处 |
cp | 复制文件和目录 |
cut | 从每行中提取指定的字段或字符 |
diff | 比较文件的差异 |
diffstat | 显示 diff 命令输出的文件统计信息 |
file | 确定文件类型 |
find | 搜索文件和目录 |
git | 分布式版本控制系统 |
gitview | Git 的图形用户界面工具 |
indent | 格式化 C 语言源代码 |
locate | 查找文件,使用已建立的数据库 |
ln | 创建硬链接或符号链接 |
lsattr | 列出文件属性 |
mattrib | 改变 MS-DOS 文件的属性 |
mc | Midnight Commander 文件管理器 |
mcopy | 复制 MS-DOS 文件 |
mdel | 删除 MS-DOS 文件 |
mdir | 列出 MS-DOS 目录内容 |
mktemp | 创建临时文件或目录 |
mmove | 移动或重命名 MS-DOS 文件 |
mread | 从 MS-DOS 文件读取文件到 Unix 系统 |
mren | 重命名 MS-DOS 文件 |
mshowfat | 显示 MS-DOS 文件的文件分配表 |
mtools | 一组在 Unix 和 MS-DOS 文件系统之间操作文件的工具 |
mtoolstest | 测试 mtools 配置 |
mv | 移动或重命名文件 |
od | 输出文件的八进制、十六进制、十进制、或 ASCII 表示形式 |
paste | 合并文件的行 |
patch | 应用补丁文件 |
rcp | 远程文件拷贝 |
rhmask | 批量重命名文件 |
rm | 删除文件或目录 |
slocate | 安全地查找文件,使用已建立的数据库 |
split | 将文件拆分成更小的部分 |
tee | 从标准输入读取并写入到标准输出和文件 |
tmpwatch | 删除临时文件 |
touch | 更改文件的时间戳 |
umask | 设置默认文件创建权限掩码 |
whereis | 显示程序的二进制文件、源代码文件及其手册页的路径 |
which | 显示命令的完整路径 |
二、磁盘管理
命令 | 功能 |
---|---|
cd | 切换当前工作目录 |
df | 显示文件系统磁盘空间使用情况 |
dirs | 显示目录栈中的目录 |
du | 显示文件和目录的磁盘使用情况 |
edquota | 编辑用户或组的磁盘配额 |
eject | 弹出可移动媒体(如光盘、U盘等) |
lndir | 创建目录树的符号链接(通常用于构建环境) |
ls | 列出目录内容 |
mcd | 切换到MS-DOS文件系统中的目录 |
mdeltree | 删除MS-DOS文件系统中的目录及其内容 |
mdu | 显示MS-DOS文件系统中的磁盘使用情况 |
mkdir | 创建新目录 |
mlabel | 改变MS-DOS文件系统中的卷标 |
mmd | 创建MS-DOS文件系统中的新目录 |
mmount | 挂载MS-DOS文件系统 |
mrd | 删除MS-DOS文件系统中的目录 |
mzip | 控制Iomega ZIP驱动器 |
pwd | 显示当前工作目录的路径 |
quota | 显示磁盘使用配额信息 |
quotacheck | 检查文件系统的磁盘使用配额 |
quotaoff | 关闭文件系统的磁盘配额 |
quotaon | 打开文件系统的磁盘配额 |
repquota | 报告文件系统的磁盘使用配额 |
rmdir | 删除空目录 |
rmt | 为远程磁带操作提供后台支持(通常不直接使用) |
stat | 显示文件或文件系统的状态信息 |
tree | 以树状图列出目录内容 |
umount | 卸载文件系统 |
三、磁盘维护
命令 | 功能 |
---|---|
badblocks | 查找文件系统中的坏块 |
cfdisk | 以图形界面方式管理磁盘分区 |
dd | 用于转换和复制文件 |
e2fsck | 检查和修复 ext2/ext3/ext4 文件系统 |
ext2ed | 编辑 ext2 文件系统 |
fdisk | 磁盘分区管理工具 |
fsck.ext2 | 检查和修复 ext2 文件系统(通常是 fsck 的一个变体) |
fsck | 检查和修复文件系统 |
fsck.minix | 检查和修复 Minix 文件系统 |
fsconf | 配置文件系统(不是所有系统都支持) |
hdparm | 配置和优化 IDE/SATA 硬盘参数 |
losetup | 设置和卸载 loop 设备 |
mbadblocks | 查找并标记坏块(Minix 文件系统相关) |
mformat | 格式化磁盘(MS-DOS 文件系统相关) |
mkbootdisk | 创建引导盘 |
mkdosfs | 创建 MS-DOS 文件系统 |
mke2fs | 创建 ext2/ext3/ext4 文件系统 |
mkfs.ext2 | 创建 ext2 文件系统(通常是 mkfs 的一个变体) |
mkfs | 创建文件系统 |
mkfs.minix | 创建 Minix 文件系统 |
mkfs.msdos | 创建 MS-DOS 文件系统 |
mkinitrd | 创建初始 RAM 磁盘映像 |
mkisofs | 创建 ISO 9660 文件系统(用于刻录光盘) |
mkswap | 创建交换分区 |
mpartition | 管理 Minix 文件系统分区(不是所有系统都支持) |
sfdisk | 磁盘分区管理工具 |
swapoff | 关闭交换空间 |
swapon | 启用交换空间 |
symlinks | 处理符号链接 |
sync | 同步文件系统缓冲区 |
四、备份压缩
命令 | 功能 |
---|---|
ar | 创建、修改和提取归档文件(如库文件) |
bunzip2 | 解压缩 .bz2 文件 |
bzip2 | 压缩文件为 .bz2 格式 |
bzip2recover | 恢复损坏的 .bz2 文件 |
compress | 使用 Lempel-Ziv 算法压缩文件(通常生成 .Z 文件) |
cpio | 归档工具,用于备份和恢复文件 |
dump | 备份文件系统 |
gunzip | 解压缩 .gz 文件 |
gzexe | 将可执行文件压缩为 .gz 格式 |
gzip | 压缩文件为 .gz 格式 |
lha | 处理 LHA 格式的归档文件 |
restore | 从 dump 备份中恢复文件 |
tar | 归档文件和目录(可结合 gzip 或 bzip2 使用) |
unarj | 解压 .arj 文件 |
unzip | 解压 .zip 文件 |
zip | 压缩文件为 .zip 格式 |
zipinfo | 显示 .zip 文件的内容 |
五、系统设置
命令 | 功能 |
---|---|
alias | 创建命令别名 |
apmd | 管理高级电源管理 |
aumix | 配置声音混音器 |
bind | 配置和管理 DNS 服务器 |
chkconfig | 管理系统服务和启动项 |
chroot | 更改根目录(用于创建隔离的环境) |
clock | 管理系统时钟(有时被 hwclock 取代) |
crontab | 编辑用户的定时任务表 |
declare | 声明变量(用于 bash 脚本) |
depmod | 生成内核模块依赖关系文件 |
dircolors | 设置 ls 命令的颜色 |
dmesg | 显示内核和启动信息 |
enable | 启用系统服务 |
eval | 计算和执行命令字符串 |
export | 设置环境变量 |
fbset | 设置帧缓冲设备参数 |
grpconv | 更新 /etc/group 文件格式 |
grpunconv | 恢复 /etc/group 文件格式 |
hwclock | 管理硬件时钟 |
insmod | 插入内核模块 |
kbdconfig | 配置键盘布局 |
lilo | 管理 LILO 引导加载程序 |
liloconfig | 配置 LILO 引导加载程序 |
lsmod | 列出已加载的内核模块 |
minfo | 显示 MTools 归档文件的信息 |
mkkickstart | 创建 Kickstart 文件(用于自动化安装) |
modinfo | 显示内核模块的信息 |
modprobe | 加载和卸载内核模块 |
mouseconfig | 配置鼠标参数 |
ntsysv | 以文本模式管理系统服务 |
passwd | 修改用户密码 |
pwconv | 生成 /etc/passwd 和 /etc/shadow 的密码文件 |
pwunconv | 从 /etc/shadow 文件中删除密码 |
rdate | 从网络时间服务器同步系统时间 |
resize | 调整终端窗口大小 |
rmmod | 卸载内核模块 |
rpm | 管理 RPM 软件包 |
set | 设置 shell 变量 |
setconsole | 配置控制台终端 |
setenv | 设置环境变量(在 csh 中使用) |
setup | 运行系统安装和配置向导 |
sndconfig | 配置声音设备 |
SVGAText Mode | 设置 SVGAText 模式(用于某些显示模式的配置) |
timeconfig | 配置系统时间(不同系统可能有不同的实现) |
ulimit | 设置用户进程的资源限制 |
unalias | 删除命令别名 |
unset | 删除 shell 变量 |
六、系统管理
命令 | 功能 |
---|---|
adduser | 添加新用户 |
chfn | 修改用户的全名 |
chsh | 更改用户的默认 shell |
date | 显示或设置系统日期和时间 |
exit | 退出当前 shell 会话 |
finger | 显示用户信息 |
free | 显示内存使用情况 |
fwhois | 查找 WHOIS 信息(通常是 whois 的变体) |
gitps | 显示 Git 仓库的进程状态(特定于某些环境或工具) |
groupdel | 删除用户组 |
groupmod | 修改用户组信息 |
halt | 立即关闭计算机 |
id | 显示用户 ID 和组 ID |
kill | 发送信号给进程(通常用于终止进程) |
last | 显示最近的登录记录 |
lastb | 显示失败的登录尝试记录 |
login | 登录系统 |
logname | 显示当前登录用户的用户名 |
logout | 退出当前登录会话 |
logrotate | 管理日志文件的轮转 |
newgrp | 切换到新的用户组 |
nice | 以调整的优先级运行程序 |
procinfo | 显示系统进程信息 |
ps | 显示当前运行的进程 |
pstree | 以树状图显示进程结构 |
reboot | 重新启动计算机 |
renice | 更改正在运行进程的优先级 |
rlogin | 远程登录(不推荐,通常使用 ssh 代替) |
rsh | 远程 shell(不推荐,通常使用 ssh 代替) |
rwho | 显示当前登录用户的列表 |
screen | 创建和管理多个 shell 会话 |
shutdown | 关闭或重新启动计算机 |
sliplogin | 配置 SLIP 网络连接(通常不再使用) |
su | 以另一个用户身份运行命令 |
sudo | 以超级用户权限运行命令 |
suspend | 暂停当前进程 |
swatch | 监控和处理日志文件(使用 swatch 工具) |
tload | 以图形方式显示系统负载 |
top | 实时显示系统进程和资源使用情况 |
uname | 显示系统信息 |
useradd | 添加新用户 |
userconf | 配置用户信息(不常见,通常使用 usermod ) |
userdel | 删除用户 |
usermod | 修改用户信息 |
vlock | 锁定虚拟控制台 |
w | 显示当前登录用户及其活动 |
who | 显示当前登录用户的信息 |
whoami | 显示当前用户的用户名 |
whois | 查询域名和 IP 地址的 WHOIS 信息 |
七、文本处理
命令 | 功能 |
---|---|
awk | 文本处理和数据提取工具 |
col | 格式化文本,去除回车符 |
colrm | 删除指定列范围的文本 |
comm | 比较两个已排序文件并显示其共同和不同的行 |
csplit | 按照指定模式或大小拆分文件 |
ed | 行编辑器,用于编辑文件 |
egrep | 扩展的 grep,支持扩展正则表达式 |
ex | 编辑器 vi 的底层模式(可以用来编辑文件) |
fgrep | 不支持正则表达式的 grep,用于固定字符串匹配 |
fmt | 格式化文本,使其每行宽度相同 |
fold | 将长行折叠成多行 |
grep | 在文件中搜索匹配的字符串 |
ispell | 拼写检查工具 |
jed | 文本编辑器 |
joe | 文本编辑器 |
join | 合并两个文件的行,根据指定字段匹配 |
look | 显示以指定字符串开头的所有行 |
mtype | 显示或打印消息文件的内容(通常用于处理邮件) |
pico | 简单的文本编辑器 |
rgrep | 递归搜索目录中的文件 |
sed | 流编辑器,用于处理和转换文本 |
sort | 排序文件的内容 |
spell | 查找文件中的拼写错误(较老的工具,现代系统中通常用 aspell ) |
tr | 替换或删除字符 |
uniq | 去除文件中重复的行 |
vi(vim) | 强大的文本编辑器 |
wc | 计算文件中的字数、行数和字符数 |
八、设备管理
命令 | 功能 |
---|---|
dumpkeys | 显示当前键盘映射的键值对 |
loadkeys | 加载键盘映射文件 |
MAKEDEV | 创建设备文件(通常在 /dev 目录下) |
rdev | 显示或修改设备文件的设备号 |
setleds | 设置键盘指示灯状态(如 Caps Lock、Num Lock) |
九、网络通信
命令 | 功能 |
---|---|
dip | 处理动态 IP 协议(有时用于配置拨号网络连接) |
getty | 启动终端登录会话 |
mingetty | 轻量级的 getty 实现 |
ppp-off | 关闭 PPP 连接 |
smbd | Samba 守护进程,用于提供文件和打印共享服务 |
telnet | 远程登录协议 |
uulog | 显示 uucp 的日志 |
uustat | 显示 uucp 任务状态 |
uux | 发送或接收 uucp 文件 |
cu | 远程控制程序 |
dnsconf | 配置 DNS 服务(在某些系统中使用) |
efax | 发送和接收传真 |
httpd | HTTP 服务器守护进程(Apache 的守护进程) |
ip | 显示和配置 IP 地址 |
ifconfig | 配置和显示网络接口 |
mesg | 显示或禁用其他用户发送的消息 |
minicom | 串口终端仿真程序 |
nc | 网络工具,用于读写网络连接 |
netconf | 网络配置工具 |
netconfig | 网络配置工具(较旧版本的网络配置工具) |
netstat | 显示网络连接、路由表和接口统计 |
ping | 测试网络连接 |
ping6 | 测试 IPv6 网络连接 |
pppstats | 显示 PPP 连接的统计信息 |
samba | 配置和管理 Samba 文件和打印服务(通常是服务命令) |
setserial | 配置串口设备 |
shapecfg | 配置流量整形工具 |
statserial | 显示串口设备的状态 |
talk | 与另一用户进行即时聊天 |
tcpdump | 捕获和分析网络数据包 |
testparm | 检查 Samba 配置文件的参数 |
traceroute | 跟踪数据包到达目标的路径 |
tty | 显示当前终端的设备文件名 |
uuname | 显示系统的 UUCP 名称 |
wall | 向所有用户发送消息 |
write | 向指定用户发送消息 |
ytalk | 进行即时聊天(增强版的 talk ) |
arpwatch | 监视网络上的 ARP 活动 |
apachectl | 控制 Apache HTTP 服务器 |
smbclient | Samba 客户端工具,用于访问共享文件和打印机 |
pppsetup | 配置 PPP 连接 |
十、电子邮件与新闻组
命令 | 功能 |
---|---|
archive | 归档工具(具体功能取决于上下文) |
ctlinnd | 控制 innd (NNTP 服务器)的运行状态 |
elm | 电子邮件客户端 |
getlist | 显示新闻组的文章列表 |
inncheck | 检查和维护 inn (新闻服务器)状态 |
发送和接收电子邮件 | |
mailconf | 配置邮件系统(具体工具可能不同) |
mailq | 显示邮件队列 |
messages | 显示系统消息或邮件(具体工具或用途取决于上下文) |
metamail | 处理多媒体邮件 |
mutt | 电子邮件客户端 |
nntpget | 从 NNTP 服务器获取新闻组文章 |
pine | 电子邮件客户端 |
slrn | 文章阅读器,处理新闻组文章 |
X WINDOWS SYSTEM | 图形用户界面系统(通常指 X Window System) |
reconfig | 配置系统或软件(具体工具和用途取决于上下文) |
startx | 启动 X Window System |
Xconfigurator | 配置 X Window System |
XF86Setup | 配置 X Window System(老版本工具) |
xlsatoms | 显示 X11 中的原子列表 |
xlsclients | 显示 X11 客户端应用程序的列表 |
十一、文件传输
命令 | 功能 |
---|---|
bye | 退出 FTP 会话 |
ftp | 文件传输协议客户端 |
ftpcount | 显示当前 FTP 连接数 |
ftpshut | 关闭 FTP 服务 |
ftpwho | 显示当前连接到 FTP 服务器的用户列表 |
ncftp | 高级 FTP 客户端 |
tftp | 轻量级文件传输协议客户端 |
uucico | 启动 UUCP 连接 |
uucp | Unix 到 Unix 复制,用于在 Unix 系统间传输文件 |
uupick | 从 UUCP 文件中选择和接收邮件或文件 |
uuto | 发送文件通过 UUCP |
scp | 安全复制,通过 SSH 进行远程文件传输 |
拓展:使用man命令查看帮助
man命令 是Linux下的帮助指令,通过man指令可以查看Linux中的指令帮助、配置文件帮助和编程帮助等信息。
有时候使用man命令来查看一个命令的帮助信息,更加快捷,给出的帮助信息非常详细。通过我的网站搜索,结果会相对简洁,描述更加通俗易懂。
或许使用man的中文输出更加合适:
(1)设置系统语言为中文(如果没有的话)
a. 安装中文语言包
sudo apt-get update
sudo apt-get install language-pack-zh-hans
sudo locale-gen zh_CN.UTF-8
b. 设置并刷新环境变量
echo 'export LANG=zh_CN.UTF-8' >> ~/.bashrc
echo 'export LANGUAGE=zh_CN.UTF-8' >> ~/.bashrc
echo 'export LC_ALL=zh_CN.UTF-8' >> ~/.bashrc
source ~/.bashrc
(2)安装manpages-zh
sudo apt-get install manpages-zh
(3)使用man查看命令中文帮助
man commands