从六个方面入门 Ubuntu@Linux 操作系统
高频命令
每条命令都要敲过一遍
👋man [command]
- 1 💬使用者在shell环境中可以操作的命令或可运行文件‼️
- 2 💬系统核心可呼叫的函数与工具等
- 3 💬一些常用的函数(function)与函式库(library),大部分为C的函式库(libc)
- 4 💬装置文件的说明,通常在/dev下的文件
- 5 💬配置文件或者是某些文件的格式‼️
- 6 💬游戏
- 7 💬惯例与协议等,例如Linux文件系统、网络协议、ASCII code等等的说明
- 8 💬系统管理员可用的管理命令‼️
- 9 💬跟kernel有关的文件
👋clear 💬 清屏
👋type [command] 💬 查看命令的具体配置信息
⌨️硬件
⬇️计量单位
-
锁存器 latch 能够存储 1位 的电路信息;
-
256位寄存器 register 是由 256个锁存器排列而成,为了节省电路一般通过矩阵排列;
-
字节 byte 是由8个寄存器排列组成;
-
内存 RAM 可以由 256个字节排列而成;
-
pow(2,8)= 256;
-
1024byte = 1KB、1024KB = 1MB、1024MB = 1GB
⬇️存储设备与文件系统
磁盘分区完毕后还需要进行格式化,之后操作系统才能够使用这个分割槽,每种操作系统能够使用的文件系统并不相同。
-
windows 98 以前的微软操作系统主要利用的文件系统是 FAT 、FAT16
-
windows 2000 以后的版本有所谓的 NTFS 文件系统
-
Linux 的正统文件系统则为 Ext2,Linux second extended file system 这一个
操作系统的文件数据除了文件实际内容外, 通常含有非常多的属性,例如 Linux 操作系统的文件权限(rwx)与文件属性(拥有者、群组、时间参数等)。文件系统通常会将这两部份的数据分别存放在不同的区块,权限与属性放置到 inode 中,至于实际数据则放置到 data block 区块中。另外,还有一个超级区块 (superblock) 会记录整个文件系统的整体信息,包括 inode 与 block 的总量、使用量、剩余量等。
👋uname 💬 查看操作系统 Kernel 版本
👋lsb_release 💬 查看操作系统版本信息
🧵磁盘-文件系统
-
df 列出文件系统的整体磁盘使用量
-
Du 评估文件系统的磁盘使用量
-
windows98 FAT/16
-
windows 2000 NTFS
-
linux EXT2
📃文件系统
⬇️FHS文件目录标准:Filesystem Hierarchy Standard
可分享的 不可分享
static 不变的 /usr 自研 /etc 配置
/opt 三方 /boot 开机
variable 可变动的 /var/spool/news 新闻等 /var/lock 程序
⬇️磁盘上内容的分类
- (-)标准文件,如文本(ASCII)文件、二进制文件(Binary)、特殊格式文件(如数据文件)
- (d)目录 directory
- ( l )快捷方式
- (b)设备文件,如存储设备、IO设备
- (s)数据接口文件,如HTTP监听程序(socket)
- (c)数据传输文件,主要解决异步资源锁问题(FIFO、pipe)
⬇️目录划分
-
/ 💬根目录
-
/boot 💬 Linux Kernel 和开机管理程序
-
/sbin 💬 开机过程中需要的执行文件,如 fsck, ifconfig, init 等
-
/bin 💬 基础执行文件,如 cat、chmod、mkdir 等
-
/lib 💬 开机需要的函数库
-
/etc 💬 配置文件
-
/etc/passwd 💬 使用者账号
-
/etc/shadow 💬 使用者密码
-
/etc/group 💬 群组
-
/dev 💬 计算机必需的硬件
-
/dev/sd+ 💬 为SCSI, SATA, U盘, Flash闪盘等接口的磁盘文件名
-
/dev/hd+ 💬 为为 IDE 接口的磁盘文件名
-
/media 💬 计算机中可拆卸硬件
-
/root 💬 系统用户资料
-
/home 💬 当前用户资料
-
/srv 💬 网络服务的数据目录
-
/tmp 💬 运行时临时目录
-
/opt 💬 三方软件安装目录
-
/usr 💬 自有软件安装目录
-
/var 💬 运行时文件
-
/var/run 💬 当前正在运行的程序
👋mkdir 💬 创建目录
👋touch [path] 💬 创建文件
👋rmdir 💬 删除空目录
👋rm 💬 删除目录或文件
- -r 强制删除
- -i 会有二次确认
👋mv 💬 移动或者重命名文件/目录
👋cp 💬 复制文件/目录
👋chgrp [new] [path] 💬 修改群组名,其必须存在于 /etc/group
👋chown [new] [path] 💬 修改拥有者,其必须存在于 /etc/passwd
👋chmod [xyz] [path]💬 修改权限
- 通过xyz权重修改权限,它们分别为read(4)write(2)excute(1)之合;
👋which 💬 查找命令所在目录(./ -> $PATH)
👋whereis 💬 更快地查找文件路径
👋locate 💬 更快地查找文件路径(从linux内置的索引数据库查找)
👋find [path] [keyword] 💬 查找文件路径
👋file [path] 💬 简单介绍某个文件/目录是什么
👋ls [path] 💬 罗列当前磁盘内容
- -l 💬 按行展示详细 [权限] [链接档个数] [拥有者账号] [群组名称] [bytes] [最后时间]
- -a 💬 展示目录下的所有内容,包含隐藏的 [.] [..]
- 权限具体内容为
- 内容类型
- r、read:目录是否暴漏、文件内容是否可以读取
- w、write:目录(及其内容)是否可以删除修改、文件内容是否可以编辑
- x、excute:用户是否能够进入目录、文件是否可以被执行
- 权限具体分布为:[拥有者] [群组] [其他用户]
- 拥有者的权限
- 群组的权限
- 其他访客的权限
👋cat [path] 💬 从头打印短文件
👋nl [path] 💬 从头打印短文件,并显示行号
👋tac [path] 💬 从末尾打印短文件
👋less [path] 或是 more [path] 💬 翻页阅读文件
- 按键 space 下翻页
- 按键 b 上翻页
👋basename 💬 返回内容名称
👋dirname 💬 返回内容路径
👋pwd 💬 返回当前目录
👥用户
📃Shell Script
操作系统的核心 (kernel) 在管理整个计算机硬件的其实是,这个核心是需要被保护的! 所以我们一般使用者就只能透过 shell 来跟核心沟通,以让核心达到我们所想要达到的工作。Bash(/bin/bash)是 Unix shell的一种,在1987年由布莱恩·福克斯为了GNU计划而编写。1989年发布第一个正式版本,原先是计划用在GNU操作系统上,但能运行于大多数类Unix系统的操作系统之上,包括Linux与Mac OS X v10.4都将它作为默认shell。
- 命令别名 alias [simple]=‘complete command’
- 查看当前所有别名 alias
- 取消别名 unalias
🧵正规表示法
正规表示法就是处理字串的方法,他是以行为单位来进行字串的处理行为, 正规表示法透过一些特殊符号的辅助,可以让使用者轻易的达到『搜寻/删除/取代』某特定字串的处理程序。
👋echo $PATH 💬 返回环境变量的目录
- 当我们运行命令时,系统会优先依据环境变量定义的目录中搜索可执行文件
📶网络
👋ifconfig 💬查看本机网络信息
.Z compress 程序压缩的文件
.gz gzip 程序压缩的文件
.bz2 bzip2 程序压缩的文件
.tar tar 程序打包的数据,并没有压缩过
.tar.gz tar 程序打包的文件,其中并且经过 gzip 的压缩
.tar.bz2 tar 程序打包的文件,其中并且经过 bzip2 的压缩
📃Vim 程序编辑器
-
vim [文件] 打开文件
-
iconv -f 原编码 -t 期望编码 [文件] 切换编码
一般模式 打开后就是一般模式;或者在其他模式下按 esc 进入;
编辑模式 按下 i 按键进入;
命令模式 按下 : 进入; -
ctrl f/b 下/上翻页
-
数字 0 / home 到这一行的最前面字符
-
$ / end 到这一行的最后面字符
-
gg 移动到第一行
-
G 移动到最后一行
-
L 移动到本页最后一行
-
H 移动到本页第一行
-
/关键词 文本搜索
-
x X 向后向前删除文本
-
dd 删除行
-
数字 + yy 复制行
-
p 删除行
-
:q 离开 q! 强制离开不保存
-
:w 保存 w! 强制保存
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!