菜鸟科技网

Linux系统命令有哪些?如何使用详解?

Linux 作为一款开源的类 Unix 操作系统,其强大的命令行工具是系统管理和高效操作的核心,掌握常用 Linux 系统命令,不仅能提升工作效率,还能深入理解系统运行机制,以下从文件管理、文本处理、系统监控、网络配置及压缩打包五个维度,详解常用命令及其使用场景。

Linux系统命令有哪些?如何使用详解?-图1
(图片来源网络,侵删)

文件管理命令

文件管理是 Linux 操作的基础,lscdcpmvrm 是最核心的命令。

  • ls:列出目录内容。
    常用选项包括 -l(长格式显示,包含权限、所有者、大小等)、-a(显示隐藏文件,以 开头的文件)、-h(以人类可读格式显示大小,如 KM)。ls -lah 会显示当前目录下所有文件(包括隐藏文件),并以易读格式展示大小。

  • cd:切换目录。
    cd / 切换到根目录,cd ~cd 切换到用户主目录,cd - 返回上一次所在目录,相对路径(如 cd Documents)和绝对路径(如 cd /home/user/Documents)均支持。

  • cp:复制文件或目录。
    复制文件时直接使用 cp 源文件 目标文件,复制目录需加 -r-R 选项(递归复制)。cp -r /tmp/test /home/user/test 目录复制到用户主目录下。

    Linux系统命令有哪些?如何使用详解?-图2
    (图片来源网络,侵删)
  • mv:移动或重命名文件/目录。
    移动文件:mv 源文件 目标目录;重命名:mv 原文件名 新文件名mv old.txt new.txt 将文件重命名,mv file.txt /tmp/ 将文件移动到 /tmp 目录。

  • rm:删除文件或目录。
    删除文件用 rm 文件名,删除目录需加 -r(递归删除)或 -f(强制删除,不提示)。rm -rf /tmp/unused 会强制删除 unused 目录及其所有内容,需谨慎使用。

文本处理命令

Linux 文本处理命令以高效著称,catgrepsedawk 是常用工具。

  • cat:查看文件内容或合并文件。
    cat filename 直接显示文件内容,cat file1 file2 > file3file1file2 合并到 file3,若需分页显示,可结合 moreless(如 cat filename | less)。

    Linux系统命令有哪些?如何使用详解?-图3
    (图片来源网络,侵删)
  • grep:文本搜索,支持正则表达式。
    常用选项:-i(忽略大小写)、-n(显示行号)、-v(反向匹配)。grep -n "error" log.txt 搜索 log.txt 中包含 error 的行并显示行号。

  • sed:流编辑器,用于文本替换、删除等。
    示例:sed 's/old/new/g' file.txtfile.txt 中所有 old 替换为 news 表示替换,g 表示全局);sed -i '1d' file.txt 直接删除文件第一行(-i 表示修改原文件)。

  • awk:文本分析工具,按列处理文本。
    awk '{print $1, $3}' file.txt 打印 file.txt 每行的第 1 列和第 3 列;awk '$1 > 100 {print $2}' 输出第一列大于 100 的行的第 2 列。

系统监控命令

实时监控系统状态是运维的日常工作,toppsdffree 是核心命令。

  • top:动态显示进程信息,包括 CPU、内存使用率。
    P 按 CPU 使用率排序,M 按内存使用率排序,q 退出。top -b -n 1 可将当前进程信息输出到文件(-b 批模式,-n 刷新次数)。

  • ps:查看静态进程状态。
    ps aux 显示所有进程的详细信息(a 显示所有进程,u 显示用户格式,x 显示无终端进程);ps -ef 以 BSD 格式显示进程,grep 可结合过滤(如 ps -ef | grep nginx 查看 nginx 进程)。

  • df:查看磁盘空间使用情况。
    df -h 以人类可读格式显示(如 10G500M),默认单位为 512 字节字节。df -h / 查看 根分区磁盘使用情况。

  • free:查看内存使用情况。
    free -h 显示内存、交换分区的使用量,-m 以 MB 为单位,-g 以 GB 为单位。free -m 可快速查看内存占用(MB)。

网络配置命令

网络配置与排查是 Linux 日常操作的重要部分,ifconfigpingnetstatss 是常用工具。

  • ifconfig:配置或显示网络接口信息(部分系统需安装 net-tools 包)。
    ifconfig 显示所有网络接口(如 eth0lo)的 IP、子网掩码等;ifconfig eth0 192.168.1.100 netmask 255.255.255.0 配置 eth0 接口 IP 地址。

  • ping:测试网络连通性。
    ping www.baidu.com 向百度发送 ICMP 包,默认持续运行,按 Ctrl+C 退出;ping -c 4 www.baidu.com 只发送 4 个包后停止。

  • netstat:查看网络连接、路由表、接口统计等(部分系统被 ss 替代)。
    netstat -tuln 显示 TCP/UDP 监听端口(t TCP,u UDP,l 只显示监听端口,n 以数字形式显示地址);netstat -an | grep ESTABLISHED 查看已建立的连接。

  • ss:替代 netstat 的新工具,显示更高效。
    ss -tuln 功能与 netstat -tuln 一致,但速度更快,尤其在高并发场景下。

压缩打包命令

Linux 常用 targzipzip 处理文件压缩与打包。

  • tar:打包/解包工具,支持多种压缩格式。
    打包:tar -cvf archive.tar file1 file2c 创建,v 显示过程,f 指定文件名);打包并 gzip 压缩:tar -czf archive.tar.gz file1z 表示 gzip);解包:tar -xvf archive.tarx 解包);解压 gzip:tar -xzf archive.tar.gz

  • gzip:单独压缩/解压文件(.gz 格式)。
    gzip file.txt 压缩后生成 file.txt.gz,原文件删除;gunzip file.txt.gz 解压并删除原压缩文件。

  • zip/unzip:处理 .zip 格式(跨平台兼容)。
    zip -r archive.zip dir/ 递归压缩目录 dirarchive.zipunzip archive.zip 解压到当前目录。

常用命令速查表

命令 功能 常用选项/示例
ls 列出目录内容 -lah(显示隐藏文件+易读大小)
grep 文本搜索 -n "error" log.txt(显示行号)
ps 查看进程 aux(显示所有进程)
df 查看磁盘空间 -h(易读格式)
tar 打包/解包 -czf(gzip 压缩)、-xzf(解压 gzip)

相关问答 FAQs

Q1:如何查找系统中包含特定关键词的文件?
A:使用 find 命令结合 grep,在 /var/log 目录下查找包含 "error" 的文本文件:find /var/log -type f -exec grep -l "error" {} \;-type f 表示只查找文件,-exec grep -l "error" {} \; 对每个找到的文件执行 grep 搜索,-l 表示只输出包含匹配的文件名。

Q2:如何查看系统负载和进程资源占用情况?
A:使用 tophtop(需安装)动态查看系统负载(前 3 行显示 1/5/15 分钟平均负载)和进程资源占用;使用 uptime 快速查看系统负载(如 uptime 输出 load average: 0.10, 0.20, 0.15);使用 vmstat 1 每秒刷新一次,查看 CPU、内存、IO 等统计信息(如 r 列表示运行进程数,us 列表示用户 CPU 占用率)。

分享:
扫描分享到社交APP
上一篇
下一篇