当前位置:首页>Linux>Linux教程:Linux常用命令教程入门学习与使用

Linux教程:Linux常用命令教程入门学习与使用

  • 2026-10-06 11:42:52
Linux教程:Linux常用命令教程入门学习与使用

前言:

Linux我们大家都知道,服务的部署,项目的上线,以及一些中间件的运行,数据库的载体,容器等均离不开这款强大的操作系统,就像Windows一样,所有软件的运行都得需要它,并且它是一款完全免费的和自由传播的类UNIX操作系统,包含许多种版本,有Ubuntu‌,Debian‌,‌Fedora‌,‌CentOS等,最常用的就是‌CentOS了,它由黑底白字的命令窗口实现各种各样的功能实现,业界使用率非常高,但很遗憾的是,许多‌CentOS版本已经被停止服务了,于是乎,openEuler‌横空出世,扛起了东方神话的大旗,解决了吃馍馍没有汤的分裂局面,两者在使用上完全相似,本次我们就来列举一下常用的Linux命令,以便我们在今后的工作当中能快速上手。

Linux 命令是操作 Linux 系统的核心工具,按功能分为文件操作、文本处理、系统管理、权限管理、压缩解压、网络管理等大类,下面我们详细说明。

一、文件与目录操作命令

这类命令用于创建、查看、修改、删除文件和目录,是最基础的操作。

1. ls - 列出目录内容

功能:列出当前或指定目录下的文件和子目录。

语法:ls [参数][目录路径]

常用参数:

-l:以长格式显示,包含权限、所有者、大小、修改时间等信息。-a:显示所有文件,包括隐藏文件(以 . 开头的文件)。-h:与 -l 配合,以人类可读的单位显示文件大小(如 KB、MB)。

示例:

ls -lh /home  # 以长格式、可读大小列出 /home 目录内容ls -a         # 列出当前目录所有文件(含隐藏文件)

2. cd - 切换工作目录

功能:切换当前终端的工作目录。

语法:cd [目录路径]

特殊路径:

cd ~ 或 cd:切换到当前用户的家目录。cd ..:切换到上级目录。cd -:切换到上一次所在的目录。

示例:

cd /usr/local  # 切换到 /usr/local 目录cd..           # 回到上级目录

3. pwd - 显示当前工作目录

功能:打印当前终端所在的绝对路径。

语法:pwd

示例:

pwd           # 输出如 /home/user

4. mkdir - 创建目录

功能:创建新的空目录。

语法:mkdir [参数] 目录名

常用参数:

-p:递归创建多级目录,若父目录不存在则自动创建。

示例:

mkdir test       # 创建名为 test 的目录mkdir -p a/b/c      # 递归创建 a/b/c 三级目录

5. rm - 删除文件或目录

功能:删除文件或目录,使用需谨慎。

语法:rm [参数] 目标

常用参数:

-f:强制删除,不提示确认。-r:递归删除目录及其下所有内容(包括子目录和文件)。

示例:

rm test.txt         # 删除 test.txt 文件(会提示确认)rm -rf test_dir     # 强制删除 test_dir 目录及所有内容

6. cp - 复制文件或目录

功能:复制文件或目录到指定位置。

语法:cp [参数] 源路径 目标路径

常用参数:

-r:递归复制目录(复制目录时必须加此参数)。-f:强制覆盖目标已存在的文件。

示例:

cp file.txt /tmp/   # 复制 file.txt 到 /tmp 目录cp -r dir1 /home/   # 复制 dir1 目录到 /home 目录

7. mv - 移动 / 重命名文件或目录

功能:移动文件 / 目录到新位置,或给文件 / 目录重命名。

语法:mv [参数] 源路径 目标路径

示例:

mv file.txt new.txt # 将 file.txt 重命名为 new.txtmv new.txt /tmp/    # 将 new.txt 移动到 /tmp 目录

8. touch - 创建空文件或修改文件时间戳

功能:创建新的空文件,或更新已有文件的访问 / 修改时间戳。

语法:touch 文件名

示例:

touch demo.txt # 创建空文件 demo.txt

9. ln - 创建链接文件

功能:创建硬链接或软链接(符号链接),软链接更常用。

语法:ln [参数] 源文件 链接文件

常用参数:

-s:创建软链接(类似 Windows 快捷方式)。

示例:

ln -s /home/test.txt /tmp/test_link.txt  # 创建软链接ln /home/test.txt /tmp/test_hard.txt    # 创建硬链接

二、文本文件查看与处理命令

这类命令用于查看、编辑、筛选文本文件内容,适用于日志分析、配置文件修改等场景。

1. cat - 查看文件内容

功能:读取文件内容并输出到终端,适合查看小文件。

语法:cat [参数] 文件名

常用参数:

-n:显示行号。

示例:

cat /etc/hosts      # 查看 /etc/hosts 文件内容cat -n test.txt     # 显示 test.txt 内容并标注行号

2. more/less - 分页查看文件内容

功能:分页显示文件内容,适合查看大文件。

more:只能向下翻页,按 Space 翻页,q 退出。less:支持上下翻页、搜索,功能更强大,按 q 退出。

语法:

more 文件名less 文件名

3. head/tail - 查看文件开头 / 结尾内容

功能:

head:默认显示文件前 10 行。tail:默认显示文件后 10 行,常用 -f 参数实时监控文件变化(如日志)。

语法:

head[参数] 文件名tail[参数] 文件名

常用参数:

-n N:显示前 / 后 N 行。-f:实时跟踪文件新增内容(常用于监控日志)。

示例:

head -n 5 test.txt       # 显示 test.txt 前 5 行tail -f /var/log/syslog  # 实时监控系统日志

4. grep - 文本搜索工具

功能:在文件或输出中搜索匹配的字符串或正则表达式,是文本处理的核心命令。

语法:grep [参数] 搜索内容 文件名

常用参数:

-i:忽略大小写。-v:反向匹配,显示不包含搜索内容的行。-n:显示匹配行的行号。

示例:

grep "error" /var/log/syslog  # 在系统日志中搜索包含 error 的行grep -i "hello" test.txt      # 忽略大小写搜索 hellogrep -vn "test" demo.txt      # 显示不包含 test 的行并标注行号

三、系统管理命令

这类命令用于查看系统状态、进程、用户等信息,是运维的常用工具。

1. ps - 查看进程状态

功能:列出当前运行的进程。

语法:ps [参数]

常用参数:

aux:以 BSD 风格显示所有进程(最常用),包含进程 ID(PID)、占用资源等。-ef:以 System V 风格显示所有进程。

示例:

ps aux |grep java     # 查看所有 java 相关的进程

2. top - 实时监控系统资源与进程

功能:动态显示系统整体资源使用情况(CPU、内存)和进程信息,按 q 退出。常用操作:

P:按 CPU 使用率排序。M:按内存使用率排序。k:终止指定 PID 的进程。

3. kill/killall - 终止进程

功能:向进程发送信号,常用以终止进程。

kill:通过 PID 终止进程。killall:通过 进程名 终止所有同名进程。

语法:

kill [信号] PIDkillall 进程名

常用信号:

-9:强制终止进程(不可忽略)。

示例:

kill -9 1234         # 强制终止 PID 为 1234 的进程killall firefox    # 终止所有 firefox 进程

4. df - 查看磁盘空间使用情况

功能:显示文件系统的磁盘占用情况。

语法:df [参数]

常用参数:

-h:以人类可读单位显示(KB/MB/GB)。

示例:

df -h         # 查看所有挂载磁盘的使用情况

5. free - 查看内存和交换空间

功能:显示系统内存(RAM)和交换分区(swap)的使用情况。

语法:free [参数]

常用参数:

-h:以可读单位显示。-m:以 MB 为单位显示。

示例:

free -h          # 查看内存使用情况

6. du - 查看文件 / 目录大小

功能:显示文件或目录占用的磁盘空间。常用参数:

-h:人类可读单位。-s:只显示总大小,不显示子目录详情。

示例:

du -sh            # 查看当前目录总大小du -h --max-depth=1   # 查看各子目录大小

7. history - 查看命令历史

功能:显示当前用户执行过的命令历史。示例:

history    # 显示所有历史命令!100      # 执行历史中第 100 条命令

8. man - 查看命令帮助手册

功能:查看任何命令的详细用法(最权威的帮助文档)。

语法:man 命令名

示例:

man ls     # 查看 ls 命令的帮助man find      # 查看 find 命令的帮助

9. alias - 设置命令别名

功能:给长命令设置简短别名,简化操作。示例:

alias ll='ls -l'    # 设置别名 ll = ls -lunalias ll          # 取消别名

四、权限管理命令

Linux 是多用户系统,权限管理用于控制用户对文件 / 目录的访问权限。

1. chmod - 修改文件 / 目录权限

功能:修改文件或目录的读(r)、写(w)、执行(x)权限。权限说明:

权限对象:u(所有者)、g(所属组)、o(其他用户)、a(所有用户)。权限类型:r(读,4)、w(写,2)、x(执行,1)。

语法:

符号模式:chmod [u/g/o/a][+/-/=][r/w/x] 文件名数字模式:chmod 三位数 文件名(三位数分别代表 u、g、o 的权限总和)。

示例:

chmod u+x test.sh  # 给文件所有者添加执行权限chmod 755 test.sh  # 设置权限为 所有者 rwx,所属组 rx,其他用户 rx

2. chown - 修改文件 / 目录所有者

功能:修改文件或目录的所有者和所属组。

语法:chown [参数] 所有者:所属组 文件名

示例:

chown root:root test.txt  # 将 test.txt 所有者和组改为 root

五、用户与用户组管理命令

1. useradd/userdel - 创建 / 删除用户

语法:

useradd [参数] 用户名  # 创建用户userdel [参数] 用户名  # 删除用户

常用参数:

useradd -m:创建用户时自动创建家目录。userdel -r:删除用户时同时删除家目录。

示例:

useradd -m testuser  # 创建用户并生成家目录userdel -r testuser  # 删除用户及家目录

2. passwd - 修改用户密码

语法:passwd [用户名]

示例:

passwd testuser    # 修改 testuser 的密码(需 root 权限)passwd             # 修改当前用户的密码

3. groupadd/groupdel - 创建 / 删除用户组

示例:

groupadd testgroup  # 创建用户组groupdel testgroup  # 删除用户组

4. usermod - 修改用户属性

功能:修改用户的所属组、家目录等属性。示例:

usermod -aG testgroup testuser   # 将用户加入 testgroup 组

六、压缩与解压命令

这类命令用于打包、压缩、解压文件,节省磁盘空间或方便传输。

1. tar - 打包 / 解包工具

功能:可将多个文件 / 目录打包成一个文件,常与 gzip/bzip2 结合实现压缩。

语法:tar [参数] 打包文件名 源文件/目录

常用参数:

-c:创建新的打包文件。-x:解包打包文件。-z:使用 gzip 压缩 / 解压(.tar.gz 格式)。-j:使用 bzip2 压缩 / 解压(.tar.bz2 格式)。-v:显示打包 / 解包的详细过程。-f:指定打包文件的名称(必须放在参数最后)。

示例:

tar -czvf test.tar.gz /home/test  # 打包并 gzip 压缩tar -xzvf test.tar.gz             # 解压 .tar.gz 文件tar -xjvf test.tar.bz2            # 解压 .tar.bz2 文件

2. zip/unzip - ZIP 格式压缩 / 解压

功能:处理 Windows/Linux 通用的 .zip 格式压缩包。语法:

zip [参数] 压缩包名 源文件/目录unzip [参数] 压缩包名

常用参数:

zip -r:递归压缩目录(压缩目录必须加此参数)。unzip -d:指定解压后的目标目录。

示例:

zip -r test.zip /home/test  # 压缩目录为 zip 包unzip test.zip -d /tmp      # 解压到指定目录

3. gzip/gunzip - GZ 格式压缩 / 解压

功能:压缩单个文件(会删除原文件,生成 .gz 文件)。示例:

gzip test.txt  # 压缩 test.txt 为 test.txt.gzgunzip test.txt.gz  # 解压为 test.txt

七、高级文件查找命令

1. find - 查找文件 / 目录

功能:根据文件名、大小、修改时间等条件搜索文件,功能强大。

语法:find 搜索路径 [参数] 搜索条件

常用参数:

-name:按文件名搜索(支持通配符 * ?)。-size:按文件大小搜索(+n 大于 n,-n 小于 n,单位 k/M/G)。-type:按类型搜索(f 文件,d 目录)。

示例:

find /home -name "*.txt"# 在 /home 下查找所有 .txt 文件find / -size +100M        # 查找大于 100M 的文件find /tmp -type d         # 查找所有目录

2. locate - 快速查找文件

功能:基于系统数据库搜索文件,速度比 find 快,但需定期更新数据库。

语法:locate 文件名

示例:

updatedb  # 更新搜索数据库(需 root 权限)locate test.txt  # 查找 test.txt 位置

八、网络管理命令

1. ping - 测试网络连通性

功能:向目标主机发送数据包,测试网络是否可达。

语法:ping [参数] 目标IP/域名

示例:

ping www.baidu.com # 测试与百度的连通性

2. ifconfig/ip addr - 查看网络接口信息

功能:查看或配置网络接口(IP 地址、MAC 地址等)。

ifconfig:传统命令,部分系统需安装 net-tools 工具。ip addr:新版命令,功能更强大。

示例:

ifconfigip addr

3. netstat - 查看网络连接与端口

功能:显示网络连接、路由表、监听端口等信息(部分系统需安装 net-tools)。常用参数:

-t:显示 TCP 连接。-u:显示 UDP 连接。-n:以 IP 地址显示,不解析域名。-l:显示监听状态的端口。-p:显示进程 ID 和进程名。

示例:

netstat -tlnp # 查看所有监听的 TCP 端口及对应进程

4. ss - 替代 netstat 的网络工具

功能:功能与 netstat 类似,速度更快,信息更全。示例:

ss -t   # 查看所有 TCP 连接ss -l   # 查看监听端口

5. curl/wget - 下载文件 / 测试网络

curl:发送 HTTP 请求,可测试接口、下载文件。
curl https://www.baidu.com  # 访问百度并输出页面内容curl -O https://xxx.com/file.tar.gz  # 下载文件
wget:专门用于下载文件,支持断点续传。
wget https://xxx.com/file.tar.gz  # 下载文件wget -c https://xxx.com/file.tar.gz  # 断点续传

本次教程到这里就结束了,希望大家多多关注支持(首席摸鱼师 微信同号),持续跟踪最新文章吧~

最新文章

随机文章