一.文件系统与目录结构
文件系统的一些性质
文件系统以从根开始, 以“/”来表示。-----/boot, /etc/motd, /bin 。
蓝色-->目录 绿色-->可执行文件 红色-->压缩文 件 浅蓝色-->链接文件 灰色-->其他文件
文件名要区分大小写。
以.开头的文件为隐藏文件 -----想要查看的话输入:ls -a 可以显示隐藏的文件。
路径分隔的 /
文件有两类数据: 元数据:metadata 数据:data
文件名最长255个字节
包括路径在内文件名称最长4095个字节
除了斜杠和NUL,所有字符都有效.但使用特殊字符的目录名和文件不推荐使用,有些字符需要用引号来引用它们。
标准Linux文件系统(如ext4),文件名称大小写敏感。例如 :MAIL, Mail, mail,mAiL
/boot:引导文件存放目录,内核文件(vmlinuz)、引导加载器 (bootloader, grub)都存放于此目录
/bin:供所有用户使用的基本命令;不能关联至独立分区, OS启动即会用到的程序 " /bin 通常为快捷方式,它真正的路径为/usr/bin" 它属于二进制程序
/sbin:管理类的基本命令;不能关联至独立分区,OS启动即 会用到的程序 ---二进制程序
/lib:启动时程序依赖的基本共享库文件以及内核模块文件 (/lib/modules) ---库文件
/lib64:专用于x86_64系统上的辅助共享库文件存放位置 ----库文件
/etc:配置文件目录 /home/USERNAME:普通用户家目录
/root:管理员的家目录
/media:便携式移动设备挂载点
/mnt:临时文件系统挂载点
/dev:设备文件及特殊文件存储位置 b: block device,随机访问 c: character device,线性访问
opt:第三方应用程序的安装位置
/srv:系统上运行的服务用到的数据
/tmp:临时文件存储位置绝对路径与相对路径:
(1)相对路径以‘/’开始 ,完整的文件的位置路径 可用于任何想指定一个文件名的时候 。 图中显示的为绝对路径
二.更改目录
使用绝对或相对路径: cd /home/wang/ cd home/wang
切换至父目录: cd ..
切换至当前用户主目录: cd
切换至以前的工作目录: cd -(只能切换一次,在当前和上一个目录之前切换)
选项:-P 显示物理路径 如图输入‘cd -P /bin’ 后通过pwd来查看看到的是真实物理路径
相关的环境变量:
PWD:当前目录路径 OLDPWD:上一次目录路径--相当于执行'cd -'命令,执行上一次目录路径。
三.显示列表
列出当前目录的内容或指定目录
ls -a 包含隐藏文件 ----->ls显示列表不显示隐藏的文件,如果想要看到隐藏的文件就要执行 ls -a来显示隐藏的文件
ls -l 显示额外的信息 :ls -l相当于‘ll’,是系统将它定义的别名来显示长格式文件
ls -R 目录递归通过
ls -ld 目录和符号链接信息
ls -1 文件分行显示 :将显示列表一行一行的显示出来
ls –S 按从大到小排序 : 按文件内容大小来排序
ls –t 按mtime排序 :mtime是修改时间,也就是说要以修改的时间顺序来显示列表。![Upload image.png failed. Please try again.]
ls –u 配合-t选项,显示并按atime从新到旧排序: ls -ut
注意:
引出atime,mtime,ctime时间概念:atime是读时间,mtime是修改时间,ctime 是改变时间。其中读时间一般默认看不见,所以如果想查看读时间要输入'll /etc/issue --time=atime ' 读时间改变的两个条件:(1)距离上一次读取一个文件的时间超过24小时(2)修改时间的时间正常要比读时间滞后,但当修改时间比读时间还要新的时候,读时间也会更新。 通过'stat'命令来显示三种时间 例如:stat /etc/motd
ls –U 按目录存放顺序显示
ls –X 按文件后缀排序: touch a.txt touch b.txt touch a.sh touch .sh 输出显示会按后缀名来显示。
四.文件通配符
常见的通配符文件
-
*匹配零个或多个字符 :
-
? 匹配任何单个字符 :注意是单个字符不是字节,字符不等于字节。
-
[0-9] 匹配数字范围 :比如 touch f{0..9}创建空文件,然后只看f[0-5]
-
[a-z]:字母 但不是代表小写字母的意思,它所表达的内容是
从a到A顺序排序
-
[A-Z]:字母 但也不是代表大写字母的意思,它所表达的内容是
- [wang] 匹配列表中的任何的一个字符 :通配wang里面的任意字母
-
[^wang] 匹配列表中的所有字符以外的字符:除了wang里面的字母都可以通配
[:digit:]:任意数字,相当于0-9
"[:lower:]:任意小写字母 [:upper:]: 任意大写字母[:alpha:]: 任意大小写字母"原理同上 -
小练习
2、显示/etc目录下以任意一位数字开头,且以非数字结尾的 文件或目录
3、显示/etc/目录下以非字母开头,后面跟了一个字母及其 它任意长度任意字符的文件或目录
4、显示/etc/目录下所有以rc开头,并后面是0-6之间的数 字,其它为任意字符的文件或目录
5、显示/etc目录下,所有以.d结尾的文件或目录
6、显示/etc目录下,所有.conf结尾,且以m,n,r,p开头的文 件或目录
7、只显示/root下的隐藏文件和目录
8、只显示/etc下的非隐藏目录
**五.复制文件和目录cp **
cp复制原则:
-
将一个文件复制到一个不存在的目标中
但是两个文件时间不一样(只是覆盖而已)此时如果执行:cp -a /etc/motd /app/wq 后时间也一样了,这里的a代表归档的意思,就是备份的意思。
在Centos中在root权限下cp命令被定义了别名,所执行命令会提醒用户,如果不想提醒只有输入\cp......命令就可以直接实现。 -
将一个文件复制到存在且为文件的目标中
在普通用户中cp命令没有别名定义,所以用"i"来提醒用户
-
将一个文件复制到存在且为目录
错误复制:(1)多个文件复制到一个不存在的文件中(2)或是多个文件复制到另一个文件中。(3)将目录复制到存在的文件中
- 将目录复制到不存在的目标中
执行 cp -r etc/sysyconfig /app/zxc 实现的效果就是将原内容复制到新的文件夹并改名成为zxc下的子目录
- 将目录复制到存在且为目录的目标中
当出现重复内容时,执行cp -rf etc/sysconfig /app/zxc 就可以实现全复制,f 的意思先将原文件内容删掉在覆盖新的内容
cp常用选项
-r, -R: 递归复制目录及内部的所有内容
- a: 归档,相当于-dR --preserv=all
-d:--no-dereference --preserv=links 不复制原文件,只复制链接名
-P: 等同--preserv=mode,ownership,timestamp - p:保持原有的文件属性信息
-v: --verbose 显示复制过程,让用户看见复制过程
六.移动和重命名文件
mv移动
常用选项:
-i: 交互式 在root权限下mv存在别名"mv =mv,i",但是普通用户没有别名定义,所以用 -i来提示
-f: 强制 直接强制移动
rm删除
常用选项:
-i: 交互式 原理和mv类似。
-f: 强制删除
-r: 递归 --no-preserve-root 递归删除
示例: rm -rf / 黄金组合,强制递归删除。安全删除---->'touch > /etc/motd ' 再执行'rm -rf /etc/motd' 先删除内容清空,再删除文件名。
七.目录操作
tree 显示目录树
-d: 只显示目录
-L level:指定显示的层级数目 tree -l 1 显示一级目录
-P pattern: 只显示由指定pattern匹配到的路径
-
mkdir 创建目录
-p: 存在于不报错,且可自动创建所需的各目录 mkdir -p /testdir
-v: 显示详细信息 mkdir -pv /testdir 显示创建过程
-m MODE: 创建目录时直接指定权限
rmdir 删除空目录
-p: 递归删除父空目录 属于逆删除,从空文件开始删除,直到文件有内容停止删除
-v: 显示详细信息
rm -r 递归删除目录树
八.硬链接与软连接
硬链接特点
1.硬链接它是针对于一个文件可以创建多个名字
2.每当创建一个新链接,链接数都会增加1
4.目录不支持硬链接
5.硬链接可以创建 /dev下的文件
软链接特点
1.软链接相当于windows里的快捷方式,和原文件不是同一个文件
2.软连接可以跨分区链接
3.软链接创建后,链接数不会增加
4.删除原始文件后,链接文件也会被破坏
5.创建软链接的相对路径是针对于--->相对目标软链接的文件路径。