博主主页: 码农派大星.
数据结构专栏:Java数据结构
数据库专栏:数据库
JavaEE专栏:JavaEE
软件测试专栏:软件测试
关注博主带你了解更多知识
1. Linux目录结构详解
- /root:存放root用户(超级管理员)的相关文件
- /home:存放普通用户的相关文件
- /bin:存放常用命令目录,普通用户可读取
- /sbin:存放需要特定权限才能使用的命令
- /etc:存放系统配置文件
- /var:存放经常变化的文件,如网络连接sock文件
- /boot:存放系统启动相关文件
- /usr:软件默认安装目录,相当于Windows的Program Files
- /dev:设备文件保存目录
- /lib:系统库保存目录
- /mnt:默认挂载光驱和软驱的目录
- /proc:直接写入内存的虚拟文件系统,保存内存挂载点
- /tmp:存放临时文件
2. Linux常用命令
1. 查看当前路径命令pwd
功能作用:显示当前所在目录的完整路径,帮助用户明确操作位置
2. cd命令基本使用
绝对路径切换:cd /直接切换到根目录
相对路径切换:cd ..返回上一级目录
命令格式:cd [路径],路径前必须有空格
- 绝对路径:从根目录(/)开始的完整路径,如/home/ubuntu
- 特殊符号:
- .表示当前目录
- ..表示上级目录
- ~表示用户主目录
- 相对路径:从当前目录开始的路径,如../ubuntu
3. 目录查看命令
ls命令
- 基本用法:
- ls:查看当前目录文件列表
- ls -l:查看文件详细信息(权限、所有者、大小等)
- ls -a:显示所有文件(包括隐藏文件)
简写形式:ll等同于ls -l
4. 目录管理命令
创建目录
mkdir命令:mkdir 目录名创建新目录
- 命令记忆技巧
- cd命令:Change Directory的缩写
- ls命令:List的缩写
- mkdir命令:Make Directory的缩写
- 参数记忆:
- -l:long listing format
- -a:all files
- -h:human readable
5. 文件操作
创建多级目录
基本创建:mkdir 文件夹名创建单级目录(如mkdir b2217)
多级创建:mkdir -p 父目录/子目录(如mkdir -p b221/a/b/c)
参数说明:-p参数表示递归创建不存在的父目录
删除目录与文件
命令来源:rmdir 是remove directory的简写
基本语法:rmdir 目录名(如rmdir c)
操作位置:必须在待删目录的上级目录执行删除命令
删除空目录
rmdir 目录名
删除非空目录
递归删除:使用rm -r 目录名删除非空目录(如rm -r b)
参数含义:-r表示递归删除目录及其所有内容
操作演示:先移动文件到目录(如mv /tmp/yyy.txt .),再执行递归删除
安全提示:该操作不可逆,会永久删除目录内所有文件
复制文件夹
复制文件夹命令cp
基本语法: cp -r 源文件目录 目标目录路径
- 示例操作:
- cp -r a b221/ 将a文件夹复制到b221目录下
- cp -r b221/a/b/c ./ 复制多级目录结构
移动文件夹命令mv
基本语法: mv 源目录 目标目录路径
- 复制区别:
- 移动后源目录不再保留
- 不需要-r参数即可移动包含子目录的文件夹
- 重命名应用:
- mv a a2 将目录a重命名为a2
- 本质上是将目录移动到新名称的路径下
- 操作技巧:
- 使用Tab键自动补全长目录名
- ctrl+l 快速清屏
- 移动前先用ls确认当前目录内容
重命名文件夹
- 实现原理: 使用mv命令实现重命名
- 语法格式: mv 原目录名 新目录名
- 示例:
- mv a a_new 将当前目录下的a文件夹重命名为a_new
- mv /tmp/old /tmp/new 使用绝对路径重命名
6. 文件编辑操作
1. 新建文件
- 命令格式: touch 文件名
- 操作示例:
- 在b2217目录下创建文本文件:touch linux笔记.txt
- 注意事项:
- 新建的是空文件
2. 删除文件
- 命令格式: rm -if 文件名
- 操作示例:
- 删除linux.txt文件:rm -if linux.txt
- 注意事项:
- 与删除目录命令相同
- 使用-i参数可交互式确认删除
- 删除后不可恢复,需谨慎操作
3. 复制文件
- 命令格式: cp 源文件 目标路径
- 操作示例:
- 复制文件到b目录:cp linux2.txt /tmp/b
- 注意事项:
- 不需要加-r参数(与目录操作的区别)
- 目标路径可以是相对路径或绝对路径
4. 移动文件
- 命令格式: mv 源文件 目标路径
- 操作示例:
- 移动文件到a目录:mv linux3.txt a
- 路径说明:
- 目标路径加不加斜杠效果相同(如a和a/)
- 移动后原位置文件会消失
5. 重命名文件
- 命令格式: mv 旧文件名 新文件名
- 操作示例:
- 重命名文件:mv linux2.txt linux4.txt
- 本质说明:
- 重命名实际上是特殊的移动操作
- 与目录重命名操作方式相同
6. 查看文件
- 查看命令对比:
- cat 文件名: 粗略查看(适合小文件)
- less 文件名: 详细查看(可上下左右滚动)
- tail 文件名: 查看文件尾部
- tail命令详解:
- tail -f 文件名: 动态查看日志文件(持续显示新增内容)
- tail -n 行数 文件名: 查看指定行数(如tail -5查看最后5行)
- 退出动态查看:按Ctrl+C
- 适用场景:
- 日志监控首选tail -f
- 大文件分析用less
- 快速查看用cat
7. 编辑文件
vi命令的模式切换
- 三种模式:
- 命令模式:初始进入vi时的默认模式,用于执行命令操作
- 编辑模式:允许用户输入和修改文本内容的模式
- 末行模式:用于保存、退出等文件操作的特殊模式
- 模式切换方法:
- 进入编辑模式:在命令模式下按i键(显示"insert"提示)
- 返回命令模式:在编辑模式或末行模式下按Esc键
- 进入末行模式:在命令模式下输入:(冒号)
- 保存与退出操作:
- 保存退出:末行模式下输入wq后回车
- 不保存退出:末行模式下输入q!后回车
- 模式切换注意事项:
- 编辑模式和末行模式之间不能直接切换
- 必须通过命令模式作为中间过渡:
- 编辑模式 → Esc → 命令模式 → : → 末行模式
- 末行模式 → Esc → 命令模式 → i → 编辑模式
- 操作示例:
- 创建文件:touch linux.tst
- 编辑文件:vi linux.txt
- 输入内容:按i进入编辑模式,输入"hello world"等文本
- 保存退出:按Esc返回命令模式,输入:wq保存退出
- 查看内容:cat linux.txt确认编辑结果
- 命令模式操作:
- yy:复制当前行
- nyy:复制n行(n为数字)
- dd:删除当前行
- ndd:删除n行
- p:粘贴
- y$:从光标复制到行尾
- d$:从光标删除到行尾
- 保存退出:
- :wq:保存并退出
- :q!:不保存强制退出
实用技巧
- 路径补全:按Tab键自动补全目录/文件名
- 清屏:clear或Ctrl+l快捷键
8. 查看文件命令
基本查看命令
- 粗略查看:使用cat 文件名命令,适合快速浏览文件全部内容
- 分页查看:使用more 文件名命令,支持:
- 按回车键:逐行查看
- 按空格键:翻页查看
- 特点:只能向下查看,不能回看
- 交互查看:使用less 文件名命令,支持:
- 上下左右查看内容
- 需要按q键强制退出
- 动态查看:使用tail -f 文件名命令,适合实时监控日志文件变化
- 指定行数查看:
- tail -n 文件名:查看文件最后n行
- head -n 文件名:查看文件前n行(默认显示10行)
- 分页查看:使用more 文件名命令,支持:
- less命令特点:
- 支持更灵活的查看方式
- 必须使用q键强制退出后才能执行其他命令
- 会占用整个终端界面
查看命令对比
- cat vs more vs less:
- less:最灵活,支持双向查看
- more:分页显示,但不能回看
- cat:一次性显示全部内容,适合小文件
- head vs tail:
- head:查看文件开头部分
- tail:查看文件末尾部分
- 都可以通过-n参数指定显示行数
9. 查找命令
使用find命令查找文件
- 基本语法结构:find 路径 选项
- 路径参数说明:
- . 表示当前路径
- / 表示根目录
- 名称查找要点:
- 必须用引号将查找内容括起来
- *星号表示匹配任意个任意字符
- 示例:find . -name '*.log'表示在当前目录查找以.log结尾的文件
find命令的常用选项
- 常用选项:
- -name:按文件名查找
- -type:按文件类型查找
- 典型示例:
- find . -name '*.txt':查找当前目录下所有.txt文件
- find / -name log:在根目录查找名为log的目录
- 注意事项:
- 查找内容必须用引号括起,否则会报错
- 星号通配符要放在引号内
使用grep命令过滤文件内容
- 功能说明:在文件外部查找特定字符串内容
- 基本语法:grep '字符串' 文件名
- 使用要点:
- 字符串必须用引号括起
- 会打印出包含该字符串的整行内容
- 与find区别:
- find查找文件本身
- grep查找文件内容
grep命令的示例
- 查找示例:
- grep 'tf' linux.txt:查找linux.txt文件中包含"tf"的行
- grep 'hi' linux.txt:查找文件中包含"hi"的内容
- 输出特点:会显示匹配字符串所在行的完整内容
- 常见用途:
- 查看日志文件中的特定信息
- 检查配置文件中是否包含特定配置项