1.linux系统中一切皆文件:
文件系统及目录结构:
/boot:引导文件存放目录,内核文件(vmlinuz)、引导加载器(bootloader, grub)都存放于此目录
? /bin:所有用户使用的基本命令;不能关联至独立分区,OS启动即会用到的程序
? /sbin:管理类的基本命令;不能关联至独立分区,OS启动即会用到的程序
? /lib:启动时程序依赖的基本共享库文件以及内核模块文件(/lib/modules)
? /lib64:专用于x86_64系统上的辅助共享库文件存放位置
? /etc:配置文件目录
? /home/USERNAME:普通用户家目录
? /root:管理员的家目录
? /media:便携式移动设备挂载点
/mnt:临时文件系统挂载点
? /dev:设备文件及特殊文件存储位置
? /tmp:临时文件存储位置
#
2.lsblk-列出系统的硬盘 du -sh 查看文件大小 pwd-显示当前目录
--echo ‘- - -‘ > /sys/class/scsi_host/host0(host2)/scan --虚拟机增加硬盘命令
--/proc /sys -进程目录
目录颜色:蓝色-目录,yellow-硬件目录,粉色-套接字,棕色-管道文件,l绿色-可执行文件,红色-打包或压缩文件
--定义颜色文件路径:/etc/DIR_COLORS
--除了斜杠和NUL,所有字符都有效.但使用特殊字符的目录名和文件不推荐使用,有些字符需要用引号来引用它们
--标准Linux文件系统(如ext4),文件名称大小写敏感,例如:MAIL, Mail, mail, mAiL
-->linux文件类型:(-)rw- --- --- :括号中所代表的文件类型
CP选项:
-i 覆盖前提示
alias-采用的是别名:替代cp -i
?-r, -R 递归复制目录及内部的所有内容
?-a 归档,相当于-dR --preserv=all
?-d --no-dereference --preserv=links 不复制原文件,只复制链接名
?--preserv[=ATTR_LIST] -p 等同--preserv=mode,ownership,timestamp
mode: 权限
ownership: 属主属组
timestamp:时间戳
links
xattr
context
all cp /etc/fstab ~wang
-v --verbose
?-f --force
?-u --update 只复制源比目标更新文件或目标不存在的文件
?-b 目标存在,覆盖前先备份,形式为 filename~
?--backup=numbered 目标存在,覆盖前先备份加数字后缀
例:每天将/etc/目录下所有文件,备份到/data独立的子目录下,并要求子目录格式为 backupYYYY-mm-dd
#
6.
mv命令:mv - 移动 (改名) 文件
改“源文件”名到“目标文件”名, 或移动“源文件”(可以不只一个)到一个“目录
#
7.
rm删除:
常用选项:
-i 交互式
-f 强制删除
-r 递归
--no-preserve-root 删除/
rm -f :强制删除的时候不会有任何提示
rm -r:在删除文件目录的字母时会递归提示
mkdir 创建目录:
-p: 存在于不报错,且可自动创建所需的各目录
-v: 显示详细信息
-m MODE: 创建目录时直接指定权限
#
8.
rmdir 删除空目录
-p: 递归删除父空目录
-v: 显示详细信息
rm -r 递归删除目录树
-使用> 命令重新建立文件并且删除文件内的数据
-- 使用>> + 文件 -创建文件(不清空文件数据)
rename批量更改文件名:
索引节点:inode(index node)表中包含文件系统所有文件列表
一个节点 (索引节点)是在一个表项,包含有关文件的信息( 元数据 ),包括:
文件类型,权限,UID,GID
链接数(指向这个文件名路径名称个数)
该文件的大小和不同的时间戳
指向磁盘上文件的数据块指针
有关文件的其他数据
保存文件是通过节点表来保存的
命令参数个数是有限的
节点编号用光会导致磁盘未满,但是报错:no space left to device
例:
拿/boot来说所用的索引节点总共524288个,没创建一个文件就会增加一个节点,当所有的节点数大于总的节点数时会导致节点数不够,但是磁盘利用率并未满;
#
9.
ln -硬链接:ln 硬链接等于cp -p 加 同步更新。
本质:同一文件多个名称,不能跨分区和设备
更改文件名但属性和inode节点名完全不变
--硬链接不支持文件夹
-->软连接:也称为符号链接
ln -s :创建软连接 软连接依赖于原始文件
创建软连接原始文件要写相对路径是相对于软连接路径 而不是当前路径
针对文件夹也可以创建 跨分区也可以
软链接可以理解成快捷方式。它和windows下的快捷方式的作用是一样的。
区别: 软链接文件的大小和创建时间和源文件不同。软链接文件只是维持了从软链接到源文件的指向关系
硬链接文件和源文件的大小和创建时间一样。硬链接文件的内容和源文件的内容一模一样,相当于copy了一份
跨分区也可以实现软连接:
删除软硬链接:
--删除硬链接其中的一个并不影响数据,indoe是目录文件的唯一标识,而软连接相当于windows快捷方式,删除了快捷方式并不会影响原数据。
硬链接和软连接区别总结;
--硬链接:同一个文件多个名字 软连接:不同文件
--硬:不支持跨分区 软:支持跨分区
--硬:不支持目录创建 软:支持
--相互关系:相互平等关系 软:相互依赖
--inode(索引节点):硬-相同 软:不同
--硬链接连接数会增长 软连接不会增长
--路径问题:硬-原始文件路径是相对当前工作路径 软:原始文件要写相对路径是相对于软连接路径而不是当前路径
--文件类型:硬;不变 软连接表现为:L
--具体命令实现方式也不同:硬-ln 软:ln -s
-->
file命令:检查文件的类型,然后确定适当的打开命令或应用程序使用
常用选项:
-b 列出文件辨识结果时,不显示文件名称
-f filelist 列出文件filelist中文件名的文件类型
-F 使用指定分隔符号替换输出文件名后默认的”:”分隔符
-L 查看对应软链接对应文件的文件类型
--help 显示命令在线帮助
#
10.
vim:文本编辑器
vi和vim区别:vi是系统自带的,VIM是vi的增强版
+# 打开文件后,让光标处于第#行的行首,+默认行尾
文本编辑种类:
行编辑器: sed
全屏编辑器:nano, vi
vim - Vi Improved
配置文件:永久有效
全局:/etc/vimrc
个人:~/.vimrc
使用vi:
使用vim命令:
使用vim命令来打开相对应的文件可以有行数和颜色等之间的增强。
三种主要模式:
?命令(Normal)模式:默认模式,移动光标,剪切/粘贴文本
?插入(Insert)或编辑模式:修改文本
?扩展命令(extended command )模式:保存,退出等
命令模式 --> 插入模式
i insert, 在光标所在处输入
I 在当前光标所在行的行首输入
a append, 在光标所在处后面输入
A 在当前光标所在行的行尾输入
o 在当前光标所在行的下方打开一个新行
O 在当前光标所在行的上方打开一个新行
扩展命令模式:
:q 退出
:q! 强制退出,丢弃做出的修改
:wq 保存退出
:x 保存退出
#
11.
复制/etc/profile至/tmp/目录,用查找替换命令删除/tmp/profile文件中的 行首的空白字符。
--grep名令:Grep 搜索以 FILE 命名的文件输入 (或者是标准输入,如果没有指定文件名,或者给出的文件名是 - 的话),寻找含有与给定的模式 PATTERN 相匹配的内容的行。默认情况下, grep 将把含有匹配内容的行打印出来,相对应的GREP选项命令可查看:man grep