文件目录和管理

Linux目录配置标准:FHS

FHS(Filesystem Hierarchy Standard)
目录定义有四种交互作用的形态
     可分享的    不可分享的
不变的                         /usr(软件放置处)    /etc(配置文件)                     
/opt(第三方软件)    /boot(内核)
可变动的    /var/mail(邮箱)    /var/run(程序相关)
/var/spool/news(新闻群组)    /var/lock(程序相关)
目录    应放置文件内容
第一部分
FHS要求必须要存在的目录
/bin    系统可执行文件的目录,单人维护模式下还能够被操作的指令
/boot    开机是同的文件,包括linux核心文件以及开机菜单和开机配置文件等
/dev    周边设备以文件形态存放于该目录下
/etc    大部分系统主要配置文件存放的目录
/lib    开机或者/bin还有/sbin指令调用的函数库
/media    可移除设备
/mnt    暂时挂载的目录
/opt    第三方软件目录
/run    开机启动后产生的各项信息,早期为/var/run目录
/sbin    开机过程做需要的指令,包括开机、修复、还原系统命令
/srv    网络服务启动后所需要取用的数据目录
/tmp    临时目录
/usr    第二层FHS设置
/var    第二层FHS设置
第二部分
FHS建议可以存在的目录
/home    系统默认的使用者主文件夹
/lib<qual>    存放与/lib不同格式的二进制函数库,例如64位的/lib64函数库等
/root    系统管理员主文件夹
重要的目录
目录    应放置文件内容
/lost+found    ext文件系统产生,当文件系统发生错误,暂存文件目录
/proc    虚拟文件系统,数据存放在内存中,例如核心、进程、周边设备以及网络状态信息等
/sys    虚拟文件系统,主要记录核心和硬件相关信息
/usr目录
目录    应放置文件内容
第一部分
FHS要求必须要存在的目录
/usr/bin    一般用户能用到的指令,目前centos7已将全部使用者指令放置到该目录,/bin链接到该目录
/usr/lib    与/lib目录相同,/lib链接到该目录
/usr/local    管理员安装第三方软件的目录
/usr/sbin    非系统正常运行需要的系统指令,/sbin链接到该目录
/usr/share    只读架构的数据文件
第二部分
FHS建议可以存在的目录
/usr/games    游戏相关数据目录
/usr/include    程序头文件
/usr/libexec    不被一般使用者常用的可执行文件或脚本
/usr/lib<qual>    与/lib<qual>相同,/lib<qual>链接到该目录
/usr/src    源代码目录
/var目录
目录    应放置文件内容
/var/cache    引用文件缓存存放目录
/var/lib    程序数据文件目录
/var/lock                         设备或文件锁目录
/var/log    日志文件目录
/var/mail                         个人电子邮箱目录
/var/run    程序或服务PID目录                     
/var/spool    队列数据文件
centos7与早期版本目录差异
/bin --> /usr/bin
/sbin --> /usr/sbin
/lib --> /usr/lib
/lib64 --> /usr/lib64
/var/lock --> /run/lock
/var/run --> /run

 

路径、文件和目录的查看和修改

路径:绝对路径和相对路径
       绝对路径:以根目录/开头
       相对路径:
               1、'.'表示当前目录
               2、'..'表示上一级目录
               3、'-'表示上一个工作目录
               4、'~'表示当前账户的住文件夹(home文件夹)
               5、'~account'表示账户account的住文件夹(home文件夹)

目录的查询和切换
       cd(change directory),切换文件夹
       pwd(print work directory),显示当前目录的绝对路径
       mkdir,创建空文件夹
       rmdir,移除空文件夹

文件和目录的检视
       ls [-aldFh] file/direcrtory
               -a,显示全部文件,包括隐藏文件
               -A,显示全部文件,不包括隐藏文件
               -l,显示文件的信息,例如文件的权限和属性等
               -F,根据文件、目录等信息,给予附加数据结构信息
               -d,列出目录本身的信息而不是目录内的文件信息
               -h,将文件大小以更加易读的形式显示出来,例如默认是以bytes为单位,对于大小适合的文件,可以转换为KB、MB、GB等,通常需要配合'-l'一起使用

       cp [-adrfpui] source_file[...] destination_file/directory
               -d,当复制文件为链接文件(link file)时,复制链接文件属性而不是链接文件指向的实际文件
               -r,递归操作,同时复制目录以及目录底下的文件
               -f,(force)强制进行操作
               -p,复制文件原本的所有属性,实际结果与用户权限有关
               -u,当文件source_file比destination_file更新时或者destination_file不存在时,才进行动作
               -a,等价与-dr
               -i,进行操作时与用户互动,确认操作是否进行

       rm [-fir] file/directory
               -f,强制操作
               -i,进行操作时与用户互动,确认操作是否进行
               -r,递归操作,同时删除目录以及目录底下的文件

       mv [-fiu] source_file/source_directory  destination_file/destination_directory
               -f,强制操作
               -i,进行操作时与用户互动,确认操作是否进行
               -u,当source_file/source_directory比destination_file/destination_directory更新时,才进行动作


文件内容的查看
       cat [-AbEnTv] file
               -b,标识出行号,空白行不标识
               -E,将结尾符号以$标识出来(END?)
               -n,标识出行号,包括空白行
               -T,将Tab键以^I标识出来(Tab?)
               -v,显示一些看不出的特殊
               -A,等价于 -vTE,显示出特殊字符

       tac
               同cat,差别在于以行为单位反序输出
       nl [-bnw] file
               -b a/t,空行 '列出/不列' 出行号
               -n ln/rn/rz,行号在 '最左方/右方/右方且加0' 显示
               -w n,n为数字,表示以多少位数字标识行号
       head [-n number] file
               number为数字,显示文件的前面几行内容,当number为负数时,表示不显示文件的最后几行。number默认值为10
       tail [-n number | -f] file
               -n,number为数字,显示文件的后面几行内容,当number为正数时,表示不显示文件的前面几行。number默认值为10
               -f,表示持续检测文件内容并输出最后几行,结束以ctrl-c操作
       more
               以页为单位翻动
               空白键(space)/Enter,向下翻动一页
               b/ctrl-b,向上翻动一页,仅对文件有效,对管道数据无效
               /string,在显示的内容中向下搜索字符串string
               :f,显示当前文件名和目前显示行号
               q,离开
       less
               空白键(space)/[pagedown],向下翻动一页
               [pageup],向上翻动一页
               /string,在显示的内容中向下搜索字符串string
               ?string,在显示的内容中向上搜索字符串string
               n,重复前一个搜索动作
               N,反向的重复前一个搜索动作
               g,返回到第一行
               G,返回到最后一行
               q,离开
       od [-t type] file
               type: a,默认字符输出
                     c,ASCII码输出
                     d [size],十进制输出,每个数占用 size Bytes
                     f [size],浮点数输出,每个数占用 size Bytes
                     o [size],八进制输出,每个数占用 size Bytes
                     x [size],十六进制输出,每个数占用 size Bytes

创建空文件以及修改文件时间
       文件时间主要有三种:1、modification time (mtime),文件内容变更记录的时间
                        2、status time(ctime),文件状态变更记录的时间,例如文件权限和属性变更
                        3、access time(atime),文件被取用记录的时间
       touch [-acdmt] file
               -a,修改atime
               -c,如果要修改的文件不存在,此选项使touch不去创建它
               -d,可以使用当前/指定时间修改文件的时间
               -m,修改mtime
               -t,可以使用当前/指定时间修改文件的时间,指定时间格式为MMDDhhmm[[CC]YY][.ss](月份日期小时分钟[[世纪]年份][.秒数])

查看文件的类型(file)
       利用命令file可以确定文件的所属类型 file filename
 

文件和目录的默认权限、特殊权限和隐藏属性

文件和目录的默认权限、特殊权限和隐藏属性
       新建文件和目录的初始权限满足一下条件:
               1、文件和目录的权限与用户的umask值有关,umask数值可以通过命令umask查询。umask默认四组权限,其中第一个数值是特殊权限,其余三个数值对应ugo三种身份权限
               umask值是指默认需要去除的权限数值,例如一般用户的umask为0002,指的是others身份用户默认没有写入(write)权限
               2、文件创建默认三种身份都没有执行权限x,因此权限最大为666
               3、目录创建默认三种身份都拥有执行权限x,因此权限最大为777
               4、文件和目录都含有特殊权限
               特殊权限有三种:SUID、SGID、SBIT
                       SUID,(1)仅对于二进制文件有效,(2)需要用户对二进制文件具有执行权限x,(3)在执行过程中可以临时获得文件所有者(owner)的权限,(4)仅在当此执行过程有效
                       SGID,二进制文件:(1)有执行权限x,(2)在执行过程中可以临时获得文件所有群组(group)的权限
                             目录:()具有r和x权限,可以进入该目录,(2)进入目录后用户的有效群组会变成目录的群组,(3)具有w权限,在该目录下新建文件,文件所属群组为目录的群组
                       SBIT,(1)仅对文件夹有效,(2)具有wx权限,用户在目录下新建的文件只有拥有者账户和root账户能够删除
               同样,对于特殊权限可以跟rwx权限一样进行二进制数值编码 [[SUID] [SGID] [SBIT]] --> [[1/0] [1/0] [1/0]],然后转换成十进制,同样可以通过字符形式授予,u+s授予SUID,g+s授予SGID,o+t授予SBIT,当对应身份具有x权限时,特殊权限显示为小写字母s或t,反之显示为大写S或T        

       隐藏属性
               查看与更改:
                       lsattr [-adR] file/directory
                               -a,列出隐藏文件
                               -d,列出目录本身的权限而不是目录里文件的权限
                               -R,递归操作,同事列出子目录的文件
                       chattr [+-=][ASacdisu] file/directory
                               +,增加属性
                                 -,去除属性
                               =,赋予属性
                               A,取用文件或目录,atime不修改
                               S,文件被修改后会立刻同步写入磁盘
                               a,文件内容只能增加,不可以修改和删除,root用户才可以设置
                               c,文件自动被压缩保存,读取时自动解压
                               d,在dump备份时不包含该文件或目录
                               i,不能删除,重命名,增加数据甚至是设置链接,root用户才可以设置
                               s,在进行删除操作时文件数据被彻底删除
                               u,与s相反,在进行删除操作时文件数据不被彻底删除


指令和文件的搜索

指令和文件的搜索
       which [-a] command
               -a,显示所有包含在PATH里面的命令的路径,而不是第一个符合选项
       whereis [-lbmsu] file/directory  (搜寻数据库)
               -l,列出常用搜索文件的目录的路径
               -b,仅搜索二进制文件(binary)
               -m,仅搜索说明文档manual下的文件(manual)
               -s,仅搜索source下的文件
               -u,搜索其他文件
       locate [-icblr] name (搜寻数据库)
               -i,忽略大小写(ignore)
               -c,输出匹配的文件数量(count)
               -b '\filename',显示完全匹配文件名的文件路径(basename)
               -l n,n为数字,表示只显示n行数据
               -r,匹配正则表达式
       updatedb
               立刻更新系统的文件数据库

       find [PATH] [option] [action]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值