liunx文件管理

一:文件系统结构元素

 文件系统与目录结构如下

 

文件和目录被组织成一个单根倒置树结构 

文件系统从根目录下开始,用“/”表示 

根文件系统(rootfs):root filesystem 

文件名称区分大小写 

以.开头的文件为隐藏文件 

路径分隔的 /

文件有两类数据:
元数据:metadata
数据:data
 文件系统分层结构:LSB Linux Standard Base • FHS: (Filesystem Hierarchy Standard)
http://www.pathname.com/fhs/

  文件名规则:

文件名最长255个字节
• 包括路径在内文件名称最长4095个字节
• 蓝色-->目录 绿色-->可执行文件 红色-->压缩文件 浅蓝色-->链接文件 灰色-->其他文件
• 除了斜杠和NUL,所有字符都有效.但使用特殊字符的目录名和文件不推荐使用,有些字符需要用引
号来引用它们。
• 标准Linux文件系统(如ext4),文件名称大

 文件系统结构

/boot:引导文件存放目录,内核文件(vmlinuz)、引导加载器(bootloader, grub)都存放于此目录
• /bin:供所有用户使用的基本命令;不能关联至独立分区,OS启动即会用到的程序
• /sbin:管理类的基本命令;不能关联至独立分区,OS启动即会用到的程序
• /lib:启动时程序依赖的基本共享库文件以及内核模块文件(/lib/modules)
• /lib64:专用于x86_64系统上的辅助共享库文件存放位置
• /etc:配置文件目录
• /home/USERNAME:普通用户家目录
• /root:管理员的家目录
• /media:便携式移动设备挂载点

小写敏感。例如:MAIL, Mail, mail, mAiL

/mnt:临时文件系统挂载点
• /dev:设备文件及特殊文件存储位置
b: block device,随机访问
c: character device,线性访问
• /opt:第三方应用程序的安装位置 • /srv:系统上运行的服务用到的数据 • /tmp:临时文件存储位置

/usr: universal shared, read
-only data
bin: 保证系统拥有完整功能而提供的应用程序
sbin
:
lib
:32位使用
lib64:只存在64位系统
include: C程序的头文件(header files)
share:结构化独立的数据,例如doc, man

local:第三方应用程序的安装位置
bin, sbin, lib, lib64, etc, share

/var: variable data files
cache: 应用程序缓存数据目录
lib: 应用程序状态信息数据
local:专用于为/usr/local下的应用程序存储可变数据;
lock: 锁文件
log: 日志目录及文件
opt: 专用于为/opt下的应用程序存储可变数据;
run: 运行中的进程相关数据,通常用于存储进程pid文件
spool: 应用程序数据池
tmp: 保存系统两次重启之间产生的临时数据

/proc: 用于输出内核与进程信息相关的虚拟文件系统
• /sys:用于输出当前系统上硬件设备相关信息虚拟文件系统
• /selinux: security enhanced Linux,selinux相关的安全策略等信息的存储位置

 Linux上的应用程序的组成部分

二进制程序:/bin, /sbin, /usr/bin, /usr/sbin, /usr/local/bin, /usr/local/sbin
• 库文件:/lib, /lib64, /usr/lib, /usr/lib64, /usr/local/lib, /usr/local/lib64
• 配置文件:/etc, /etc/DIRECTORY, /usr/local/etc
• 帮助文件:/usr/share/man, /usr/share/doc, /usr/local/share/man, /usr/local/share/doc

Linux下的文件类型

-:普通文件
• d: 目录文件

• b: 块设备

• c: 字符设备

• l: 符号链接文件

• p: 管道文件pipe

• s: 套接字文件socket

 

 显示当前工作目录

 pwd :

           -P 显示真实物理路径

             -L 显示链接路径(默认)

更改目录

cd 改变目录
使用绝对或相对路径:
cd /home/wang/
cd home/wang
切换至父目录: cd ..
切换至当前用户主目录: cd
切换至以前的工作目录: cd
-
• 选项:
-P
• 相关的环境变量:
PWD:当前目录路径
OLDPWD:上一次目录路径

列出目录内容: ls

 

用法:ls [options] [files_or_dirs] • 示例:
ls
-
a 包含隐藏文件
ls
-
l 显示额外的信息
ls
-
R 目录递归通过
ls
-ld 目录和符号链接信息
ls
-1 文件分行显示
ls
–S 按从大到小排序
ls
–t
按mtime排序
ls
–u 配合
-
t选项,显示并按atime从新到旧排序
ls
–U 按目录存放顺序显示
ls
–X 按文件后缀排序

查看文件状态 stat

文件:metadata, data
• 三个时间戳:
access time:访问时间,atime,读取文件内容(文件访问时间)
modify time: 修改时间, mtime,改变文件内容(数据)(在文件被改变是 时间改变)
change time: 改变时间, ctime,元数据发生改变(只有在改变权限时,时间才改变)

  **文件名通配符

* 匹配零个或多个字符

? 匹配任何单个字符
• ~ 当前用户家目录

• ~mage 用户mage家目录

• ~+ 当前工作目录

• ~- 前一个工作目录

• [0-9] 匹配数字范围

• [a-z]:字母

• [A-Z]:字母

• [yibo] 匹配列表中的任何的一个字符

• [^yibo] 匹配列表中的所有字符以外的字符

预定义的字符类:man 7 glob
[:digit:]:任意数字,相当于0-9
[:lower:]:任意小写字母
[:upper:]: 任意大写字母
[:alpha:]: 任意大小写字母
[:alnum:]:任意数字或字母
[:blank:]:水平空白字符
[:space:]:水平或垂直空白字符 文件名不可能包含回车,故此处使用与[:blank:]:效果相同
[:punct:]:标点符号

 【例】显示/etc目录下,文件名至少包含一个小写母和一个数字并以.conf结尾的文件或目录

     显示/etc目录下,所有以一个大写字母开头,以两个数字结尾的文件或目录

 

 

 

posted @ 2018-07-14 17:58  2号  阅读(116)  评论(0编辑  收藏  举报