admin 管理员组文章数量: 1184232
快捷键:
Tab:命令/文件名补全
Ctrl+C:终止当前命令
Ctrl+L:清屏(等同于clear命令)
路径操作:
cd /:进入根目录
cd ..:返回上级目录
1.Linux目录结构
1.1Win和Linux文件系统区别
- 树状结构:Linux系统的目录结构是一个倒立的树状结构,根目录用"/"表示
- 与Windows区别:没有盘符概念(如C盘、D盘),所有存储设备都挂载在目录树下
- 根目录:是整个系统的顶级目录,无法再向上追溯(类似面向对象中的Object类)
1.2 Linux常见目录介绍
/bin
- 全称:binary(二进制)的缩写
- 作用:存放二进制可执行程序和shell命令
- 常见命令:
- date:显示当前时间
- ls:列出目录内容
- cat:查看文件内容
- echo:输出文本
- 执行方式:
- 直接输入命令(如date):由shell解析器自动查找并执行
- 使用路径执行(如/bin/date):直接运行当前目录下的可执行文件
/boot
- 作用:存放系统启动所需的文件
- 重要文件:
- grub:系统引导程序
- vmlinuz:Linux内核文件
- 注意事项:
- 不要随意修改或删除该目录下的文件
- 修改可能导致系统无法启动
/dev
- 全称:device(设备)的缩写
- Linux哲学:在Linux系统中,一切皆文件,硬件设备也被虚拟为文件
- 设备文件示例:
- mouse:鼠标设备文件
- sda:硬盘设备文件
- mem:内存设备文件
- 测试命令:
- sudo cat /dev/input/mouse0
- 移动鼠标会显示坐标数据(二进制格式)
- 按Ctrl+C终止命令
- 按Ctrl+L清屏
/etc
- 核心作用:存放当前操作系统的配置目录,路径为根目录下的/etc
- 配置范围:
- 系统级配置(如网络配置在network目录)
- 软件安装配置(如MySQL配置在mysql目录下的f文件)
- 重要性:后期安装MySQL、Nginx、Redis等软件时都需要在此目录进行配置
- 操作验证:可通过ls /etc命令查看大量配置文件
- 典型配置文件:
查看
/etc下的配置文件:执行ls /etc,会看到大量以.conf(配置文件)、.d(配置子目录)结尾的文件 / 目录。- network/:网络配置
- mysql/:数据库配置
- passwd:用户账户信息
- hosts:域名解析配置
/home
- 核心作用:存放系统中用户的宿主目录(家目录)
- 目录结构:
- 每个用户拥有独立子目录(如/home/cc)
- 新建用户时会自动创建对应的家目录
- 宿主目录特点:
- 用户登录后的默认工作目录
- 拥有完整的读写权限
- 存放用户个性化配置和私有文件
/lib
“library(库)” 的缩写,存放系统和应用程序运行所依赖的 “动态链接库”(.so 文件)和 “静态链接库”(.a 文件)—— 相当于程序的 “辅助工具包”,没有这些库,很多程序会无法运行。
/lost+found
主要用于修复文件系统错误时,存放找回的 “丢失文件碎片”,常见于嵌入式 Linux(如路由器、开发板)或使用机械硬盘的系统。
/media
外设自动挂载目录,如U盘插入时会自动挂载到此目录下
/mnt
手动挂载目录,与media的区别在于需要手动指定挂载
/media vs /mnt
两者都是用于 “挂载” 外部存储设备(如 U 盘、移动硬盘、光盘)的目录,但定位不同:
| 目录 | 核心定位 | 操作方式 | 示例场景 |
|---|---|---|---|
/media |
自动挂载点(系统自动管理) | 插入 U 盘 / 光盘后,系统自动识别并挂载到/media/用户名/设备名下 |
普通用户插入 U 盘,直接在/media下访问文件 |
/mnt |
手动挂载点(用户手动指定) | 需要用mount命令手动将设备挂载到/mnt(或其下子目录) |
运维人员挂载服务器的额外硬盘、NFS 共享目录 |
示例:插入 U 盘后,系统可能自动挂载到
/media/itcast/USB-DISK,此时访问该路径就能操作 U 盘文件;如果要挂载一块新硬盘/dev/sdb1,则需执行mount /dev/sdb1 /mnt/new_disk(先创建/mnt/new_disk目录)。
/opt
“optional(可选)” 的缩写,用于存放第三方大型商业软件或独立安装的应用程序—— 这些软件通常不依赖系统默认目录(如/usr),有自己独立的目录结构。
/proc
“process(进程)” 的缩写,是一个虚拟文件系统(不占用实际硬盘空间,数据存放在内存中),存放当前系统运行的进程信息、内存状态、硬件参数等实时数据。
/root
root用户(Linux 系统的 “超级管理员”,拥有最高权限)的家目录,相当于root的 “私人空间”,普通用户没有访问权限(除非root手动授权)。
/sbin目录
- “superuser binary” 的缩写,存放只有
root用户才能执行的系统管理命令—— 这些命令涉及系统核心操作(如分区、网络配置),普通用户无权执行。 - 特点:
- 命令通常涉及系统管理功能
- 普通用户无法直接执行这些命令
- 常见命令:
- fdisk:磁盘分区工具
- ifconfig:网络配置工具
- ldconfig:动态链接库配置工具
/bin与/sbin的区别
- 权限区别:
- /bin:所有用户可用的基本命令
- /sbin:需要root权限的系统管理命令
- 内容区别:
- /bin包含常用命令如ls、cat、echo等
- /sbin包含系统管理命令如fdisk、ifconfig等
- 路径提示符:
- 路径中的斜杠有三种含义:
- 开头的/表示根目录
- 中间的/是目录分隔符
- 结尾的/是目录提示符(可省略)
- 路径中的斜杠有三种含义:
/srv目录
- “server(服务)” 的缩写,存放系统服务(如 FTP、HTTP、NFS)运行时所需的资源文件或配置,体现 Linux 作为服务器的特性
- 用途:
- 存放FTP、HTTP等服务的配置文件
- 体现Linux作为服务器的特性
- 示例:
- FTP服务的配置文件通常存放在/srv/ftp
/tmp目录
- 作用:“temporary(临时)” 的缩写,存放程序运行时产生的临时文件,是系统提供的 “公共临时存储空间”。
- 特点:
- 系统提供给用户使用的临时存储空间
- 程序关闭后文件可能被删除
- 系统重启后会清空该目录
- 使用场景:
- 程序运行期间需要的临时文件
- 不需要长期保存的数据
/usr目录
- 作用:“Unix Software Resource” 的缩写,存放与用户相关的软件资源、工具、文档等,是 Linux 系统中文件数量最多、体积最大的目录之一(仅次于根目录)。
- 重要子目录:
- /usr/include:存放C语言头文件
- 包含stdio.h、stdlib.h等常用头文件
- 系统编程相关的头文件如fcntl.h、signal.h等
- /usr/local:本地安装的软件资源
- /usr/include:存放C语言头文件
/var目录
- 含义:variable的缩写,存放经常变化的文件
- 主要内容:
- 日志文件:/var/log目录
- 系统自动生成的日志文件
- 旧日志会被压缩存档
- 数据库文件:/var/lib/mysql
- MySQL数据库的实际存储位置
- 需要root权限访问
- 日志文件:/var/log目录
- 管理建议:
- 定期清理旧日志文件
- 重要数据不应存放在此目录
用户宿主目录定义
- 术语定义:
- 宿主目录:学术名词,指系统为每个用户分配的专属目录
- 家目录:宿主目录的俗称(注意不是指/home本身)
- 命名规范:
- 路径格式:/home/用户名
- 示例:
- itcast用户:/home/itcast
- lisi用户:/home/lisi
- 特殊符号:
- :代表当前用户的家目录(如等价于/home/itcast)
- 创建机制:
- 通过useradd命令创建用户时自动生成
- 目录名严格匹配用户名
- 多用户环境:
- 系统可同时存在多个用户账户
- 每个用户只能自由操作自己的家目录
- 管理员(root)可访问所有用户目录
- 权限管理:
- 默认权限:rwxr-xr-x(用户可读写,其他用户只读)
- 重要配置文件:.bashrc、.profile等隐藏文件
2.cd命令的使用
1CD绝对路径
- 定义:从根目录/开始找寻的路径称为绝对路径
- 特点:无论当前在哪个目录下,绝对路径都能准确定位目标位置
示例:
| 当前目录 | 执行命令 | 最终切换到的目录 | 原理说明 |
|---|---|---|---|
| 任意目录 | cd /bin |
/bin(系统命令目录) |
从根目录直接进入bin子目录 |
| 任意目录 | cd /home/itcast |
/home/itcast(itcast 用户的家目录) |
从根目录→home→itcast,按完整层级导航 |
记忆点:绝对路径总是以斜杠/开头,表示从根目录开始查找
2. CD相对路径
1)上一级目录
- 符号:使用..表示上一级目录
- 示例:
- 当前在/home/itcast/bj_40目录中
- 执行cd ..进入/home/itcast目录
- 再次执行cd ..进入/home目录
- 特点:可以连续使用..向上返回多级目录
2)当前目录
- 符号:使用.表示当前目录
- 示例:
- cd .:保持当前目录不变
- cd ./itcast:进入当前目录下的itcast子目录
- 实用技巧:./常用于执行当前目录下的可执行文件
3)当前目录总结
- 区别:
- 绝对路径:从根目录开始,不受当前位置影响
- 相对路径:基于当前位置进行导航
- 记忆口诀:"点点向上,点杠当前"
- 注意:使用相对路径前需明确当前所在位置,可用pwd命令查看
3. CD回车
- 功能:直接回车返回用户的家目录(宿主目录)
- 特点:
- 家目录用~符号表示
- 无论当前在哪个目录,cd回车都能直接返回家目录
- 验证方法:使用pwd命令查看当前路径
4. CD-
- 功能:返回上一次工作过的目录
- 特点:
- 只能在最近两个目录间切换
- 例如:从/home/itcast/bj_40切换到/dev后,cd -会返回/home/itcast/bj_40
- 实用场景:在两个目录间快速切换时特别有用
- 注意:与cd ..的区别在于cd -是切换目录,而cd ..是向上返回一级
3.pwd命令
- 全称与作用:print working directory的缩写,用于打印当前shell的工作目录路径
- 使用场景:通过pwd命令可查看当前所在目录的完整路径,如/home/itcast
- 记忆技巧:只需记住缩写形式,全拼在实际操作中不常用
4.终端提示符格式
- 标准格式:用户名@主机名:shell工作路径$
- 组成解析:
- itcast@itcast:表示用户itcast在itcast主机上
- ~:波浪符特指当前用户的宿主目录(家目录)
- $:表示当前是普通用户身份
- 特殊符号:
- @:英文"at"的变体,表示"在"的关系
- ~:仅在家目录可用,其他目录需使用完整路径
5.用户等级与切换
1)用户身份标识
- $普通用户:提示符末尾显示$符号
- #管理员(root):提示符末尾显示#符号,拥有系统最高权限
- 危险提示:root用户可修改/删除任何文件,初学者应谨慎使用
2)用户切换操作
- 切换命令:sudo su输入密码后即可切换为root用户
- 退出命令:使用exit命令可退出root用户返回普通用户
- 目录变化:
- 普通用户家目录:/home/用户名
- root用户家目录:/root
6.快捷键
Tab键
- 补齐命令
- 补齐路径
- 显示当前目录下的所有目录
清屏
clear作用为清除终端上的显示(类似于DOS的cls清屏功能),也可使用快捷键:Ctrl + L ( “L” 为字母 )。
deng@itcast:~$ clear
中断进程
ctlr+c的作用是中断终端的操作。
deng@itcast:/$ sleep 3000
遍历输入的历史命令
- 从当前位置向上遍历:ctrl + p (↑)
- 从当前位置向下遍历: ctrl + n(↓)
光标相关操作
- 光标左移: ctrl + b (←)
- 坐标右移: ctrl + f (→)
- 移动到头部: ctrl + a(Home)
- 移动到尾部: ctlr + e(End)
字符删除
-
删除光标前边的字符:ctrl + h(Backspace)
-
删除光标后边的字符:ctrl + d
光标后边的字符即光标覆盖的字符
-
删除光标前所有内容:ctrl + u
-
删除光标后所有内容:ctrl + k
7.Linux软件在线安装
1. Linux软件安装方式
- 系统渊源关系:
- Mac OS基于Unix系统改造
- iOS系统源自Mac OS改造
- Android系统明确使用Linux内核
- 安装方式特点:
- 与手机安装方式类似(应用商店模式)
- 不同于Windows的安装包双击安装方式
- 安装位置由系统自动管理,用户无需指定
2.安装命令详解
- 安装流程:
- 必须保证网络连接正常
- 使用sudo apt-get update更新软件源
- 使用sudo apt-get install <软件名>安装指定软件
- 示例:安装tree命令sudo apt-get install tree
- 操作特点:
- 类似手机应用商店的一键安装
- 无需关心软件安装位置
- 系统自动完成依赖管理和文件部署
8. Linux常用基础命令
1)sudo apt-get
- 网络连通性测试
- 测试方法:使用ping命令测试网络连通性,可以ping域名(如www.baidu)或IP地址(如8.8.8.8)
- 结果判断:若返回time值(毫秒)和TTL等信息,说明网络畅通;8.8.8.8是Google提供的免费DNS服务器
- 测试原理:访问外网需要借助网关,ping通说明当前网络环境正常
- 虚拟机网络设置
- NAT模式配置
- 配置步骤:
- 打开虚拟机设置 → 网络适配器 → 选择NAT模式
- 原理:共享主机IP地址,使Linux能借助Windows的网络环境访问外网
- IP获取:采用自动获取方式,无需手动配置
- 验证方法:配置完成后需再次ping外网地址验证连通性
- 配置步骤:
- 网络故障排查
- 常见现象:若无法ping通外网地址
- 解决方案:
- 检查虚拟机网络模式是否为NAT
- 确认主机网络正常
- 重新获取IP地址
- 测试建议:优先测试知名网站(百度/淘宝/京东)或稳定IP(8.8.8.8)
- 结果解读:
- 包含传输数据包大小(64 bytes)
- 显示往返时间(time=46.5ms等)
- 统计信息:丢包率(0% packet loss)、平均延迟(45.676ms)
- 序列号(icmp_seq)用于检测连续性
- NAT模式配置
- 软件在线安装
- 简单设置
- 网络设置
- NAT模式配置:通过虚拟机设置→网络适配器→选择NAT模式,实现Linux系统共享主机IP地址上网
- 验证方法:在终端执行ping 8.8.8.8命令,出现类似以下响应表示网络连通:
- 网络设置
- 简单设置
- 指定软件源
- 操作路径:系统菜单→软件和更新→下载自→其他站点
- 推荐源:阿里云镜像源http://mirrors.aliyun/ubuntu
- 更新机制:首次选择需要更新软件源索引,阿里云服务器会同步国外软件仓库
- 使用命令安装软件
- 基本格式:
- sudo apt-get install 软件名(完整格式)
- sudo apt install 软件名(Ubuntu 16.04+简写格式)
- 工具对比:
- apt-get:基础包管理工具(类比迅雷)
- aptitude:增强工具(类比快车),支持更多功能
- 基本格式:
- 使用命令查看软件状态
- 前提条件:需先安装aptitude:sudo apt-get install aptitude
- 查看命令:sudo aptitude show 软件名
- 状态标识:
- "已安装":软件已成功安装
- "未安装":系统中不存在该软件
-
- 应用案例
- tree工具安装
- 安装命令:sudo apt-get install tree
- 功能特点:
- 以树状结构显示目录内容
- 仅适用于目录,不能查看普通文件内容
功能:递归显示目录的层级结构,用连线区分父子目录,一目了然。
命令 效果说明 示例场景 tree显示当前目录的完整结构(包括所有子目录和文件) 在 /home/itcast目录执行,查看自己的文件组织tree 目录名显示指定目录的结构 tree /etc→ 查看系统配置目录的层级关系tree -L n只显示前 n层目录(避免层级过深导致输出混乱)tree -L 2→ 只显示当前目录下的 1-2 层结构 - 使用示例:
- tree:显示当前目录结构
- tree 目录名:显示指定目录结构
- sl趣味工具
- 安装命令:sudo apt-get install sl
- 功能特点:
- 输入错误命令sl时显示动画小火车
- 纯娱乐性质,无实际功能
- 验证安装:sudo aptitude show sl查看安装状态
- tree工具安装
- 注意事项
- 双重验证:安装前后均可使用aptitude show确认软件状态
- 网络依赖:必须保证Linux系统能访问外网才能正常安装
- 权限要求:所有安装命令都需要sudo获取管理员权限
- 版本差异:Ubuntu 16.04+支持apt简写命令,旧版本需使用完整apt-get
9.文件相关命令
ls
ls是英文单词list的简写,其功能为列出目录的内容,是用户最常用的命令之一,它类似于DOS下的dir命令。
Linux文件或者目录名称最长可以有256个字符,“.”代表当前目录,“..”代表上一级目录,以“.”开头的文件为隐藏文件,需要用 -a 参数才能显示。
- 语法:
ls [选项]... [文件/目录]...
无选项时默认列出 “当前目录下的非隐藏文件 / 目录”,类似 Windows 的dir命令;
加目录路径(如ls /bin)可指定查看目标目录的内容。
ls常用参数:
| 参数 | 含义 |
|---|---|
| -a | 显示指定目录下所有子目录与文件,包括隐藏文件 |
| -l | 以列表方式显示文件的详细信息 |
| -h | 配合 -l 以人性化的方式显示文件大小 |
ls -l
ls -l的7部分参数
- 7种文件类型:
文件类型 标识字符 是否占用磁盘 核心特点与示例 普通文件 -是 存储文本、图片、程序等数据(如 test.txt、a.out可执行文件)目录文件 d是 存储其他文件 / 目录的索引(如 /home、/bin)软链接文件 l否(伪文件) 类似 Windows 快捷方式,指向原文件(如 ln -s test.txt link.txt创建的link.txt)字符设备文件 c否(伪文件) 按 “字符流” 操作的硬件设备(如键盘 /dev/keyboard、屏幕/dev/tty1),位于/dev目录块设备文件 b否(伪文件) 按 “磁盘块” 操作的硬件设备(如硬盘 /dev/sda、分区/dev/sda1),位于/dev目录管道文件 p否(伪文件) 单向数据传输通道(如 mkfifo pipe1创建的pipe1),命令中 `就是管道操作(如lsgrep txt`) 套接字文件 s否(伪文件) 用于网络 / 进程间通信的特殊文件(如 /tmp/socket1),基于 socket 机制
关键区分:
- 真实文件:仅 “普通文件” 和 “目录文件” 占用磁盘空间,其他 5 类均为 “伪文件”,仅为系统与硬件 / 进程交互的 “接口”,不存储实际数据。
- 设备文件定位:所有硬件设备(键盘、硬盘、鼠标)的 “文件化身” 都在
/dev目录,通过ls -l /dev可看到大量c(字符设备)和b(块设备)类型的文件。
-
权限的 “分组逻辑” 与字符含义
(1)分组规则:3 组权限对应 3 类用户
权限分组 对应用户类型 字符位置(后 9 个字符) 示例( rw-r--r--)第 1 组 所有者(创建者) 第 1-3 位 rw-(可读可写,无执行)第 2 组 所属组用户 第 4-6 位 r--(仅可读)第 3 组 其他人(非前两类) 第 7-9 位 r--(仅可读)(2)权限字符含义
字符 权限类型 对普通文件的作用 对目录的作用 r读权限 可查看文件内容(如 cat test.txt)可列出目录下的文件(如 ls 目录)w写权限 可修改 / 删除文件内容(如 echo 1 > test.txt)可创建 / 删除目录下的文件(如 touch 目录/new.txt)x执行权限 可运行文件(如 ./a.out执行程序)可进入目录(如 cd 目录)-无权限 无法执行对应操作 无法执行对应操作
目录权限特殊说明:
目录的 “执行权限(x)” 是 “进入目录” 的前提,若目录权限为 r--(无 x),即使有读权限,也无法用 cd 进入目录。例如 drw-r--r-- 的目录:
- 所有者有
rw-→ 可列出目录内容(ls),但无法进入(无 x); - 其他人有
r--→ 可列出内容,但无法进入。
ls命令的其他参数
1)-a
- 功能:显示所有文件,包含隐藏文件
- 隐藏文件规则:
- 以"."开头的文件为隐藏文件(如.bashrc)
- 与Windows不同,不是通过属性设置实现隐藏
- 操作示例:
- touch .test.c创建隐藏文件
- mkdir .aaa创建隐藏目录
- 必须使用ls -a才能查看
2)-r
- 功能:递归显示目录内容
- 显示规则:
- 逐层显示子目录内容
- 可与-a组合使用显示隐藏文件
- 操作示例:
- ls -R显示目录树结构
- ls -Ra同时显示隐藏文件
- ls -Ral显示完整详细信息
3)-h
- 功能:以人类可读方式显示文件大小
- 显示规则:
- 自动添加KB/MB/GB单位
- 默认单位是字节
- 组合使用:
- ls -lh显示带单位的文件大小
- ls -lha同时显示隐藏文件
4)缩写的ls相关命令
- ll:相当于ls -alF(显示详细信息+隐藏文件+类型标识)
- la:相当于ls -A(显示隐藏文件但不包括.和..)
- l:相当于ls -CF(列显示+类型标识)
5)应用案例
- 例题:ls命令演示
- 关键操作:
- ls -d查看目录本身属性而非内容
- 默认对目录显示的是其子内容信息
- 关键操作:
版权声明:本文标题:Linux 入门 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/b/1763584501a3252332.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论