【Linux】基础指令


一、前置基础概念

1.1 命令标准格式

复制代码
命令 [选项] [操作参数]
  • 命令:核心操作程序,必填
  • 选项:-短参数、--长参数,拓展功能
  • 参数:操作对象(文件、目录、路径) 示例:ls -l /home ls = 命令,-l = 选项,/home = 操作路径

1.2 绝对路径 & 相对路径

  1. 绝对路径**:从根/开始完整路径,任意目录生效 例:/root/home/user**
  2. 相对路径**:基于当前目录,不带/ 例:test../dir**

1.3 特殊路径符号

  • / :根目录,Linux 文件顶层入口
  • . :当前目录
  • .. :上一级目录
  • ~ :当前用户家目录(root=/root,普通用户 =/home/ 用户名)
  • $ :普通用户提示符
  • # :root 管理员提示符

二、目录操作命令

2.1 pwd 打印当前路径

作用:查看自己所在目录,防止迷路 语法:pwd 示例:

复制代码
[root@localhost ~]# pwd
/root

2.2 cd 切换目录

语法:cd 目标路径 常用操作:

复制代码
cd /home          # 绝对路径进入home
cd ..             # 返回上一级
cd ../..          # 返回上两级
cd ~ / cd         # 回到用户家目录
cd test           # 进入当前目录下test文件夹
cd -              # 切换回上一次所在目录

注意:文件夹带空格需加引号 cd "my dir"

2.3 ls 列出目录内容

语法:ls [选项] [路径] 核心参数:

  • -l:详细列表(权限、大小、时间、所有者)

  • -a:显示隐藏文件(. 开头文件)

  • -h:人性化展示大小 KB/MB/GB

  • -t:按修改时间排序,新文件在前 常用组合:

    ls -alh # 完整查看当前所有文件
    ls -l /usr/local # 查看指定目录
    ls -lth # 按时间倒序展示

2.4 mkdir 创建文件夹

语法:mkdir [选项] 目录名 核心参数-p:递归创建多级目录

示例:

复制代码
mkdir test                  # 新建单目录
mkdir -p a/b/c/d            # 一次性创建多层嵌套
mkdir dir1 dir2 dir3        # 同时创建多个目录

坑:不加-p,上级不存在则报错

2.5 rmdir 删除空目录

仅能删除无文件的空文件夹

复制代码
rmdir test

日常删除目录基本用 rm,rmdir 极少使用


三、文件操作命令

3.1 touch 创建空文件 / 更新文件时间

复制代码
touch app.log               # 创建单个空白文件
touch 1.txt 2.txt 3.csv    # 批量创建文件

3.2 rm 删除文件 / 文件夹(高危)

Linux 无回收站,删除永久丢失 语法:rm [选项] 文件/目录 参数:

  • -f强制删除,不弹窗确认

  • -r递归删除文件夹内所有内容

    rm test.txt # 删除文件,会确认
    rm -f test.txt # 强制删文件
    rm -rf test/ # 递归强制删除文件夹

⚠️ 严禁执行 rm -rf /,会清空整个系统,服务器直接报废

3.3 cp 复制文件 / 目录

语法:cp 源 目标 参数-r:复制文件夹必须加

复制代码
cp test.txt /home/          # 复制文件到指定目录
cp -r test/ /root/          # 复制整个文件夹
cp old.txt new.txt          # 复制并重命名

3.4 mv 移动 / 重命名

无需递归参数,支持文件夹操作

复制代码
mv test.txt /usr/           # 移动文件
mv oldname.txt newname.txt  # 文件重命名
mv dir1 /home/              # 移动文件夹

四、文件内容查看(日志 / 配置专用)

4.1 cat 一次性读取全部内容

适合小文件,大文件会刷屏

复制代码
cat /etc/profile

4.2 more 分页查看,仅向下翻

复制代码
more app.log

操作:空格下一页、回车下一行、q 退出

4.3 less 高级分页(推荐)

支持上下翻页、关键词搜索

复制代码
less app.log

快捷键:上下箭头翻行、PgUp/PgDn 翻页、/关键词向下搜索,n 切换匹配项,q 退出

4.4 head 查看文件头部,默认前 10 行

复制代码
head -n 20 app.log  # 查看前20行

4.5 tail 查看文件尾部,日志监控神器

参数:

  • -n:指定末尾行数

  • -f:实时跟踪文件新增内容

    tail -n 100 app.log # 查看最后100行日志
    tail -f app.log # 实时刷新日志,排查报错必备


五、文件检索命令

5.1 find 全盘查找文件

语法:find 查找路径 -name "匹配规则" 通配符*匹配任意字符

复制代码
find / -name "*.txt"          # 全局查找所有txt文件
find /home -name "*log*"      # home目录查找名称含log的文件

5.2 grep 文件内过滤关键词

语法:grep [选项] "关键词" 文件 参数:

  • -n:显示匹配行号

  • -i:忽略大小写

  • -v:反向过滤(排除含关键词内容)

    grep -n "error" app.log # 查找日志报错,带行号
    grep -v "^$" app.log # 过滤日志空行
    ps -ef | grep java # 管道搭配,查找java进程


六、文件权限管理

Linux 文件分为三类权限:所有者、所属组、其他用户

权限数值:r=4 读,w=2 写,x=1 执行

6.1 chmod 修改权限

常用权限标准:

  • 755:所有者全部权限,其他可读执行(目录默认)

  • 644:所有者读写,其他只读(普通文件默认)

  • 777:全部用户最高权限(生产禁止使用)

    chmod 644 test.txt
    chmod -R 755 project/ # -R递归修改目录内所有文件

6.2 chown 修改文件归属用户 / 组

复制代码
chown root:root test.txt
chown -R root:root project/

七、系统进程与资源查看

7.1 ps 查看进程

复制代码
ps -ef                 # 列出系统全部进程
ps -ef | grep mysql    # 过滤mysql进程

7.2 top 实时资源监控

等同于 Windows 任务管理器,查看 CPU、内存占用 输入top回车,q 退出

7.3 kill 终止进程

复制代码
kill 1234        # 正常关闭PID=1234进程
kill -9 1234     # 强制杀死卡死进程

7.4 磁盘空间命令

复制代码
df -h    # 查看服务器整体磁盘挂载、总占用
du -sh * # 查看当前目录各文件夹大小

八、网络命令

8.1 ping 测试连通性

复制代码
ping www.baidu.com

8.2 ip addr 查看本机 IP

替代老旧 ifconfig 命令

复制代码
ip addr

8.3 curl 命令行访问网址 / 接口

复制代码
curl https://www.baidu.com

九、压缩解压命令

9.1 zip/unzip

复制代码
zip test.zip test.txt    # 压缩
unzip test.zip           # 解压

9.2 tar(Linux 主流打包格式)

参数含义:c 打包、x 解压、z gz 压缩、v 打印过程、f 指定压缩包

复制代码
# 压缩文件夹为tar.gz
tar -zcvf test.tar.gz test/
# 解压tar.gz包
tar -zxvf test.tar.gz

十、高频实用小命令

复制代码
clear          # 清空终端屏幕
history        # 查看所有执行过的历史命令
whoami         # 查看当前登录用户
hostname       # 查看服务器主机名

十一、学习总结

  1. 目录基础:pwd、cd、ls、mkdir 必须熟练
  2. 文件操作:rm -rf 高危慎用,cp/mv/touch 日常高频
  3. 日志排查:tail -f、grep、less 开发核心组合
  4. 权限:755、644 为线上标准权限
  5. 服务器运维:top、ps、kill、df、du 定位资源异常

相关推荐
ZhemgLee5 小时前
在Linux上使用Claude Code 并使用本地VS Code SSH远程访问的完整指南
linux·运维·服务器·ssh
CHANG_THE_WORLD5 小时前
4.串行接受多个客户端
linux
bush45 小时前
嵌入式linux学习记录十八,KGDB使用例
linux·学习
zd2005725 小时前
claude-science 绕过登录和换任意模型
服务器·生物
小则又沐风a6 小时前
库的原理:目标文件,ELF格式,程序加载
java·linux·前端
Yiiz.8 小时前
虚拟机网络设置
运维
蓝胖的四次元口袋14 小时前
服务器网络与系统基础-面试题
服务器·网络
乐维_lwops15 小时前
2026年如何实现多分支机构全网设备统一运维监控一
运维·cmdb·运维监控·网管·agent ops
Cx330❀15 小时前
【MySQL基础】一文吃透“表的约束”:从 Null/Default 到主外键的终极安全法则
linux·服务器·数据库·c++·mysql·安全