mobile wallpaper 1mobile wallpaper 2mobile wallpaper 3mobile wallpaper 4
1798 words
5 minutes
Linux基础命令详解
2026-02-08

Linux基础命令详解#

什么是Linux命令?#

Linux命令是在Linux系统中通过终端执行的命令,它们是与Linux系统交互的主要方式。Linux命令通常由命令名、选项和参数组成,格式为:

command [options] [arguments]
  • 命令名:命令的名称,如lscd
  • 选项:修改命令行为的标志,通常以---开头
  • 参数:命令操作的对象,如文件或目录名

Linux终端#

终端模拟器#

在图形界面中,我们使用终端模拟器来执行Linux命令。常见的终端模拟器包括:

  • GNOME Terminal:GNOME桌面环境的默认终端
  • Konsole:KDE桌面环境的默认终端
  • xfce4-terminal:Xfce桌面环境的默认终端
  • Terminator:支持多窗口的终端模拟器
  • Tilix:支持平铺窗口的终端模拟器

终端快捷键#

掌握终端快捷键可以提高工作效率:

  • Ctrl+C:中断当前命令
  • Ctrl+D:结束输入(EOF)
  • Ctrl+Z:暂停当前命令
  • Ctrl+L:清屏
  • Ctrl+A:光标移动到行首
  • Ctrl+E:光标移动到行尾
  • Ctrl+U:删除从光标到行首的内容
  • Ctrl+K:删除从光标到行尾的内容
  • Ctrl+W:删除从光标到前一个单词的内容
  • Tab:自动补全命令或文件名

基础文件系统导航命令#

pwd - 显示当前工作目录#

pwd命令用于显示当前工作目录的绝对路径。

/home/user/Documents
pwd

cd - 切换目录#

cd命令用于切换当前工作目录。

# 切换到指定目录
cd /path/to/directory
# 切换到用户主目录
cd
cd ~
# 切换到上一级目录
cd ..
# 切换到上一次工作目录
cd -

ls - 列出目录内容#

ls命令用于列出目录中的文件和子目录。

# 列出当前目录内容
ls
# 列出详细信息(权限、所有者、大小、修改时间等)
ls -l
# 列出所有文件(包括隐藏文件)
ls -a
# 列出详细信息并包括隐藏文件
ls -la
# 按大小排序(从大到小)
ls -lhS
# 按修改时间排序(最新的在前)
ls -lht
# 只列出目录
ls -d */

文件操作命令#

touch - 创建空文件#

touch命令用于创建空文件或更新文件的时间戳。

# 创建单个空文件
touch filename
# 创建多个空文件
touch file1.txt file2.txt file3.txt
# 更新文件的时间戳(不修改文件内容)
touch existing_file.txt

mkdir - 创建目录#

mkdir命令用于创建新目录。

# 创建单个目录
mkdir directory
# 创建多个目录
mkdir dir1 dir2 dir3
# 创建嵌套目录(递归创建)
mkdir -p parent/child/grandchild
# 创建目录时设置权限
mkdir -m 755 secure_directory

rm - 删除文件或目录#

rm命令用于删除文件或目录。

# 删除文件
rm file.txt
# 删除多个文件
rm file1.txt file2.txt file3.txt
# 强制删除文件(不提示确认)
rm -f file.txt
# 删除目录(递归删除)
rm -r directory
# 强制删除目录(不提示确认)
rm -rf directory
# 删除空目录
rmdir empty_directory

cp - 复制文件或目录#

cp命令用于复制文件或目录。

# 复制文件
cp source.txt destination.txt
# 复制文件到目录
cp file.txt directory/
# 复制多个文件到目录
cp file1.txt file2.txt file3.txt directory/
# 递归复制目录
cp -r source_directory destination_directory
# 保留文件属性(权限、时间戳等)
cp -p source.txt destination.txt
# 复制时显示进度
cp -v source.txt destination.txt

mv - 移动或重命名文件或目录#

mv命令用于移动文件或目录,也可用于重命名文件或目录。

# 重命名文件
mv oldname.txt newname.txt
# 移动文件到目录
mv file.txt directory/
# 移动多个文件到目录
mv file1.txt file2.txt file3.txt directory/
# 移动目录
mv source_directory destination_directory
# 交互式移动(提示确认)
mv -i file.txt directory/
# 强制移动(不提示确认)
mv -f file.txt directory/
# 移动时显示进度
mv -v file.txt directory/

文件查看命令#

cat - 查看文件内容#

cat命令用于查看文件的全部内容,适合查看小文件。

# 查看文件内容
cat file.txt
# 查看多个文件内容
cat file1.txt file2.txt
# 查看文件内容并显示行号
cat -n file.txt
# 查看文件内容并压缩空行
cat -s file.txt

less - 分页查看文件内容#

less命令用于分页查看文件内容,适合查看大文件。

# 分页查看文件内容
less file.txt
# 在less中搜索关键词
/keyword
# 向前搜索
n
# 向后搜索
N
# 退出less
q

head - 查看文件开头#

head命令用于查看文件的开头部分。

# 查看文件前10行
head file.txt
# 查看文件前n行
head -n 20 file.txt
# 查看文件前n字节
head -c 100 file.txt

tail - 查看文件结尾#

tail命令用于查看文件的结尾部分,也可用于实时监控文件变化。

# 查看文件后10行
tail file.txt
# 查看文件后n行
tail -n 20 file.txt
# 实时监控文件变化
tail -f logfile.txt
# 实时监控文件变化并显示行号
tail -fn 20 logfile.txt

文本搜索命令#

grep - 搜索文本#

grep命令用于在文件中搜索指定的文本模式。

# 在文件中搜索关键词
grep "keyword" file.txt
# 在多个文件中搜索关键词
grep "keyword" file1.txt file2.txt
# 递归搜索目录中的文件
grep -r "keyword" directory/
# 忽略大小写
grep -i "keyword" file.txt
# 显示匹配行的行号
grep -n "keyword" file.txt
# 显示不匹配的行
grep -v "keyword" file.txt
# 使用正则表达式
grep -E "pattern" file.txt

系统信息命令#

uname - 显示系统信息#

uname命令用于显示系统信息。

# 显示系统内核名称
uname
# 显示详细系统信息
uname -a
# 显示内核版本
uname -r
# 显示硬件架构
uname -m

hostname - 显示主机名#

hostname命令用于显示或设置主机名。

# 显示主机名
hostname
# 设置主机名(需要root权限)
sudo hostname newhostname

date - 显示或设置日期和时间#

date命令用于显示或设置系统的日期和时间。

# 显示当前日期和时间
date
# 显示指定格式的日期和时间
date +"%Y-%m-%d %H:%M:%S"
date +"%A, %B %d, %Y"
# 设置日期和时间(需要root权限)
sudo date -s "2026-02-05 12:00:00"

uptime - 显示系统运行时间#

uptime命令用于显示系统的运行时间和负载情况。

# 显示系统运行时间和负载
uptime
# 输出示例: 14:30:45 up 2 days, 3:45, 2 users, load average: 0.12, 0.08, 0.05

who - 显示当前登录用户#

who命令用于显示当前登录到系统的用户。

# 显示当前登录用户
who
# 显示详细信息
who -a
# 显示当前用户
whoami

网络命令#

ping - 测试网络连接#

ping命令用于测试与目标主机的网络连接。

# 测试与目标主机的连接
ping google.com
# 发送指定数量的数据包
ping -c 5 google.com
# 持续ping直到按下Ctrl+C
ping google.com

ifconfig - 显示网络接口信息#

ifconfig命令用于显示或配置网络接口信息。

# 显示所有网络接口信息
ifconfig
# 显示指定网络接口信息
ifconfig eth0
# 启动网络接口
ifconfig eth0 up
# 关闭网络接口
ifconfig eth0 down

ip - 网络配置工具#

ip命令是一个功能强大的网络配置工具,可替代ifconfig

# 显示所有网络接口信息
ip addr
# 显示路由表
ip route
# 显示网络连接
ip link

权限管理命令#

chmod - 修改文件权限#

chmod命令用于修改文件或目录的权限。

# 使用符号模式修改权限
chmod u+rwx file.txt # 给所有者添加读、写、执行权限
chmod g+rx file.txt # 给组添加读、执行权限
chmod o-rwx file.txt # 移除其他用户的所有权限
# 使用数字模式修改权限
chmod 755 file.txt # 所有者:rwx,组:rx,其他:rx
chmod 644 file.txt # 所有者:rw,组:r,其他:r
# 递归修改目录权限
chmod -R 755 directory/

chown - 修改文件所有者#

chown命令用于修改文件或目录的所有者。

# 修改文件所有者
chown user file.txt
# 修改文件所有者和组
chown user:group file.txt
# 递归修改目录所有者
chown -R user:group directory/

压缩和解压缩命令#

tar - 归档工具#

tar命令用于创建和提取归档文件。

# 创建tar归档
tar -cvf archive.tar files/
# 创建gzip压缩的tar归档
tar -czvf archive.tar.gz files/
# 创建bzip2压缩的tar归档
tar -cjvf archive.tar.bz2 files/
# 提取tar归档
tar -xvf archive.tar
# 提取gzip压缩的tar归档
tar -xzvf archive.tar.gz
# 提取bzip2压缩的tar归档
tar -xjvf archive.tar.bz2
# 查看归档内容
tar -tvf archive.tar

zip/unzip - 压缩和解压缩zip文件#

zipunzip命令用于创建和提取zip压缩文件。

# 创建zip压缩文件
zip archive.zip files/
# 提取zip压缩文件
unzip archive.zip
# 查看zip文件内容
unzip -l archive.zip

进程管理命令#

ps - 显示进程信息#

ps命令用于显示当前系统的进程信息。

# 显示当前用户的进程
ps
# 显示所有进程
ps aux
# 以树状结构显示进程
ps axjf
# 按CPU使用率排序
ps aux --sort=-%cpu
# 按内存使用率排序
ps aux --sort=-%mem

top - 实时监控进程#

top命令用于实时监控系统的进程和资源使用情况。

# 实时监控进程
top
# 在top中按CPU使用率排序
P
# 在top中按内存使用率排序
M
# 退出top
q

kill - 终止进程#

kill命令用于终止指定的进程。

# 使用进程ID终止进程
kill PID
# 强制终止进程
kill -9 PID
# 终止指定名称的进程
pkill process_name

磁盘管理命令#

df - 显示磁盘使用情况#

df命令用于显示文件系统的磁盘使用情况。

# 显示磁盘使用情况
df
# 以人类可读的格式显示
df -h
# 显示inode使用情况
df -i

du - 显示目录大小#

du命令用于显示目录或文件的大小。

# 显示目录大小
du directory/
# 以人类可读的格式显示
du -h directory/
# 显示目录总大小
du -sh directory/
# 显示前n个最大的文件或目录
du -h --max-depth=1 directory/ | sort -hr | head -n 10

包管理命令#

apt - Debian/Ubuntu包管理器#

apt命令是Debian和Ubuntu系统的包管理器。

# 更新包列表
sudo apt update
# 升级已安装的包
sudo apt upgrade
# 安装包
sudo apt install package_name
# 卸载包
sudo apt remove package_name
# 搜索包
sudo apt search package_name
# 显示包信息
sudo apt show package_name

yum - RHEL/CentOS包管理器#

yum命令是RHEL和CentOS系统的包管理器。

# 更新包
sudo yum update
# 安装包
sudo yum install package_name
# 卸载包
sudo yum remove package_name
# 搜索包
sudo yum search package_name
# 显示包信息
sudo yum info package_name

dnf - Fedora包管理器#

dnf命令是Fedora系统的包管理器,是yum的替代品。

# 更新包
sudo dnf update
# 安装包
sudo dnf install package_name
# 卸载包
sudo dnf remove package_name
# 搜索包
sudo dnf search package_name
# 显示包信息
sudo dnf info package_name

常用快捷键和技巧#

命令历史#

  • history:显示命令历史
  • !n:执行历史中第n条命令
  • !!:执行上一条命令
  • !command:执行最近一次以command开头的命令
  • Ctrl+R:搜索命令历史

命令别名#

可以为常用命令创建别名,提高工作效率。

# 在~/.bashrc或~/.bash_aliases中添加别名
alias ll='ls -la'
alias la='ls -a'
alias ..='cd ..'
alias ...='cd ../..'
alias grep='grep --color=auto'
# 使别名生效
source ~/.bashrc

命令组合#

可以使用管道和重定向组合多个命令。

# 使用管道将一个命令的输出作为另一个命令的输入
ls -la | grep "txt"
# 将命令输出重定向到文件
ls -la > file.txt
# 将命令输出追加到文件
ls -la >> file.txt
# 将命令错误输出重定向到文件
command 2> error.txt
# 将命令输出和错误输出都重定向到文件
command &> output.txt
# 从文件读取输入
command < input.txt

帮助命令#

man - 显示命令手册#

man命令用于显示命令的手册页。

# 显示命令手册
man command
# 搜索手册页
man -k keyword
# 显示手册页的特定部分
man section command

help - 显示内置命令帮助#

help命令用于显示shell内置命令的帮助信息。

# 显示内置命令帮助
help command
# 显示所有内置命令
help

—help - 显示命令选项帮助#

大多数命令都支持--help选项,用于显示命令的选项和用法。

# 显示命令选项帮助
command --help

总结#

本文介绍了Linux系统中最常用的基础命令,包括文件系统导航、文件操作、文件查看、文本搜索、系统信息、网络命令、权限管理、压缩和解压缩、进程管理、磁盘管理、包管理等方面的命令。

掌握这些基础命令是使用Linux系统的必备技能,它们可以帮助你更高效地管理和操作Linux系统。通过不断练习和使用,你会逐渐熟悉这些命令,并能够灵活运用它们来解决实际问题。

练习#

  1. 使用ls命令查看当前目录的详细内容,包括隐藏文件。

  2. 使用mkdir命令创建一个嵌套目录结构:test/dir1/dir2

  3. 使用cp命令将一个文件复制到刚创建的目录中。

  4. 使用grep命令在一个文件中搜索特定关键词。

  5. 使用chmod命令修改文件的权限。

  6. 使用tar命令创建一个压缩归档文件。

  7. 使用dfdu命令查看磁盘使用情况。

  8. 使用pstop命令查看系统进程。

  9. 使用ping命令测试网络连接。

  10. 使用man命令查看一个命令的详细手册。

通过这些练习,你将更加熟悉Linux基础命令的使用,为进一步学习Linux系统打下坚实的基础。

Share

If this article helped you, please share it with others!

Linux基础命令详解
https://blog.vanilla.net.cn/posts/linux/2026-02-05-linux-basic-commands/
Author
星夜
Published at
2026-02-08
License
CC BY-NC-SA 4.0

Some information may be outdated

Table of Contents