linux learn - 2

各类接口的磁盘在Linux中的文件名:
/dev/sd[a-p][1-15]:SCSI, SATA, U盘, Flash闪盘等接口的磁盘文件名
/dev/hd[a-d][1-63]:IDE 接口的磁盘文件名node

磁盘分区完毕后需format,以后OS才能使用这个分割槽, 格式化是由于每种OS所配置的文件属性/权限不一样,为存放这些文件所需的数据,需将分割槽格式化,以成为OS能用的FS.如,windows 98 之前的微软OS主要用 FAT/FAT16,windows 2000 后NTFS,Linux 的正统FS为 Ext2 (Linux second extended file system, ext2fs).此外,默认状况下,windows OS不认识Ext2
linux

FS一般会将数据存放在不一样区块,权限与属性放置到 inode,实际数据放置到data block.另外,还有一个superblock记录整个FS的总体信息,包括 inode 与 block 的总量、使用量、剩余量等
superblock:记录此FS的总体信息,包括inode/block的总量、使用量、剩余量,及FS的格式与相关信息等
inode:记录文件的属性,一个文件占用一个inode,同时记录此文件的数据所在的 block 号码
block:实际记录文件的内容,若文件太大,占用多个 block
闪盘使用的FS通常为 FAT.FAT没有 inode,因此 FAT 无法将文件的全部 block 在一开始就读取出来.每一个 block 号都记录在前一个 block 中
须要碎片整理的缘由是文件写入的block 过于离散,此时文件读取的效能不好, 这时透过碎片整理将同一个文件所属的 blocks 汇整,这样数据的读取会比较容易.(Ext2 是索引式FS,基本上不需碎片整理)
Ext2所支持的 block 大小有 1K, 2K4K 三种
vim

Block 大小 1KB 2KB 4KB
最大单一文件限制 16GB 256GB 2TB
最大FS总容量 2TB 8TB 16TB

Ext2的 block的基本限制
原则上,block 的大小与数量在格式化完就不能再改变(除非从新格式化)
每一个 block 内最多只能放置一个文件的数据
若是文件>block 的大小,则一个文件会占用多个 block
若文件<block ,则该 block 的剩余容量不能再被使用(磁盘空间浪费)windows

About GZIP file, referring RFC 1952 : GZIP File Format Specification
GZIP in linux:spa

*.Z         compress 程序压缩的文件(已不流行)
*.gz        gzip 程序压缩的文件;
*.bz2       bzip2 程序压缩的文件;
*.tar       tar 程序打包的数据,并无压缩过;
*.tar.gz    tar 程序打包的文件,其中而且通过 gzip 的压缩
*.tar.bz2   tar 程序打包的文件,其中而且通过 bzip2 的压缩

vi三种模式关系:
code

vi三种模式的相互关系
通常模式:orm

移动光标的方法索引

h 或← 光标向左移动一个字符
j 或 ↓ 光标向下移动一个字符(向下移 30 行,可 "30j" 或 "30↓")
k 或↑ 光标向上移动一个字符
l 或 → 光标向右移动一个字符
Ctrl + f 屏幕『向下』移动一页,至关于 [Page Down]按键 (经常使用)
Ctrl + b 屏幕『向上』移动一页,至关于 [Page Up] 按键 (经常使用)
Ctrl+d 屏幕『向下』移动半页
Ctrl+u 屏幕『向上』移动半页
+ 光标移动到非空格符的下一列
- 光标移动到非空格符的上一列
n<space> 那个 n 表示『数字』,例如 20 。按下数字后再按空格键,光标会向右移动这一行的 n 个字符。例如 20<space> 则光标会向后面移动 20 个字符距离
0 Home 移动到这一行的最前面字符处 (经常使用)
$ End 移动到这一行的最后面字符处(经常使用)
H 光标移动到这个屏幕的最上方那一行的第一个字符
M 光标移动到这个屏幕的中央那一行的第一个字符
L 光标移动到这个屏幕的最下方那一行的第一个字符
G 移动到这个档案的最后一行(经常使用)
nG n 为数字。移动到这个档案的第 n 行。例如 20G 则会移动到这个档案的第 20 行(可配合 :set nu)
gg 移动到这个档案的第一行,至关于 1G  (经常使用)
n<Enter> n 为数字。光标向下移动 n 行(经常使用)

搜寻与取代接口

/word 向光标之下寻找一个名为 word 的字符串.例如要搜寻 vbird 这个字符串,就输入 /vbird (经常使用)
?word 向光标之上寻找一个字符串名称为 word 的字符串。
n 这个 n 是英文按键。表明『重复前一个搜寻的动做』。举例来讲, 若是刚刚咱们执行 /vbird 去向下搜寻 vbird 这个字符串,则按下 n 后,会向下继续搜寻下一个名称为 vbird 的字符串。若是是执行 ?vbird 的话,那么按下 n 则会向上继续搜寻名称为 vbird 的字符串
N 这个 N 是英文按键。与 n 恰好相反,为『反向』进行前一个搜寻动做。 例如 /vbird 后,按下 N 则表示『向上』搜寻 vbird 。
:n1,n2s/word1/word2/g n1 与 n2 为数字。在第 n1 与 n2 行之间寻找 word1 这个字符串,并将该字符串取代为 word2 !举例来讲,在 100 到 200 行之间搜寻 vbird 并取代为 VBIRD 则:
『:100,200s/vbird/VBIRD/g』。(经常使用)
:1,$s/word1/word2/g 从第一行到最后一行寻找 word1 字符串,并将该字符串取代为 word2 (经常使用)
:1,$s/word1/word2/gc 从第一行到最后一行寻找 word1 字符串,并将该字符串取代为 word2 !且在取代前显示提示字符给用户确认 (confirm) 是否须要取代!(经常使用)

删除、复制与贴上ip

x, X 在一行字当中,x 为向后删除一个字符 (至关于 [del] 按键), X 为向前删除一个字符(至关于 [backspace] 亦便是退格键) (经常使用)
nx n 为数字,连续向后删除 n 个字符
dd 删除游标所在的那一整列(经常使用)
ndd n 为数字。删除光标所在的向下 n 列,例如 20dd 则是删除 20 列 (经常使用)
d1G 删除光标所在到第一行的全部数据
dG 删除光标所在到最后一行的全部数据
d$ 删除游标所在处,到该行的最后一个字符
d0 那个是数字的 0 ,删除游标所在处,到该行的最前面一个字符
yy 复制游标所在的那一行(经常使用)
nyy n 为数字。复制光标所在的向下 n 列,例如 20yy 则是复制 20 列(经常使用)
y1G 复制游标所在列到第一列的全部数据
yG 复制游标所在列到最后一列的全部数据
y0 复制光标所在的那个字符到该行行首的全部数据
y$ 复制光标所在的那个字符到该行行尾的全部数据
p, P p 将已复制的数据在光标下一行贴上,P贴在游标上一行.举例,光标在第 20 行,且已复制了 10 行数据,则按p 后,那 10 行数据会贴在本来的 20 行以后,亦即由 21 行开始.但若是按下 P , 那么本来的第 20 行会被推到变成 30 行 (经常使用)
J 将光标所在列与下一列的数据结合成同一列
c 重复删除多个数据,例如向下删除 10 行,[ 10cj ]
u 复原前个动做(经常使用)
Ctrl+r 重作上个动做(经常使用)
. 重复上个动做 (经常使用)

通常模式-->编辑模式:

进入插入或取代的编辑模式

i, I 进入Insert mode:
i 『从光标处插入』, I 『在所在行第一个非空格符处插入』 (经常使用)
a, A 进入Insert mode:
a 『从光标所在的下个字符处开始插入』, A 『从光标所在行的最后一个字符处开始插入』(经常使用)
o, O 进入Insert mode:
o 『在光标所在的下一行处插入新的一行』,O在光标所在处的上一行插入新的一行(经常使用)
r, R 进入取代模式(Replace mode):
r 只会取代光标所在的那个字符一次;R会一直取代光标所在的文字,直到按下 ESC(经常使用)
Esc 退出编辑模式,回到通常模式(经常使用)

通常模式-->命令模式:

指令列的储存、离开等指令

:w 将编辑的数据写入硬盘档案(经常使用)
:w! 若文件属性为『只读』,强制写入。但到底可否写入, 仍是跟你对该档案的档案权限有关
:q 离开 vi (经常使用)
:q! 若曾修改过档案,又不想储存,使用 ! 为强制离开不储存档案
:wq 储存后离开,若为 :wq! 则为强制储存后离开 (经常使用)
ZZ 若档案没有更动,则不储存离开,若档案已经被更动过,则储存后离开
:w [filename] 将编辑的数据储存成另外一个档案(相似另存新档)
:r [filename] 在编辑的数据中,读入另外一个档案的数.即将 『filename』 档案内容加到游标所在行后面
:n1,n2 w [filename] 将 n1 到 n2 的内容储存成 filename 这个档案
:! command 暂时离开 vi 到指令列模式下执行 command 的显示结果.例如
『:! ls /home』便可在 vi 当中察看 /home 底下以 ls 输出的档案信息

vim 环境的变动

:set nu 显示行号 :set nonu 取消行号
:set ai! 自动缩进 :set tabstop=4 设置tab键为4个空格
相关文章
相关标签/搜索