乐考论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 145|回复: 5

[linux] [经验分享] Centos 7 文件和目录管理

[复制链接]
发表于 2018-6-5 09:29:51 | 显示全部楼层 |阅读模式
文件系统结构:
    /boot:系统引导文件,内核
    /bin:用户的基本命令
    /dev:设备文件
    /etc:配置文件
    /home:用户家目录
    /root:root用户家目录
    /sbin:管理类的基本命令
    /tmp:临时文件存放地
    /usr:共享的只读数据
    /mnt:临时文件系统挂载点
    /media:移动设备挂载点
    /opt:第三方应用程序的安装位置
    /srv:系统运行的服务用到的数据
    /var:变化的数据文件
    /proc:用于输出内核与进程信息相关的虚拟文件系统
    /sys:用于输出当前系统上硬件设备相关信息的虚拟文件系统
回复

使用道具 举报

 楼主| 发表于 2018-6-5 09:30:33 | 显示全部楼层
文件类型:用ls -l filename 即可查看
    -:普通文件
    d:目录文件
    b:块设备文件
    c:字符设备
    l:符号链接
    p:管道
    s:套接字文件socket
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-6-5 09:30:54 | 显示全部楼层
pwd:显示当前的工作目录
#pwd   显示当前的工作目
        直接输出pwd命令,会显示出当前所在的完整路径
               

                               
登录/注册后可看大图


#$PWD   保存了变量当前目录路径
        pwd命令调用PWD变量内的值,当用户切换目录时,会自动更新变量内的值,输入pwd命令就会引用变量的值。
               

                               
登录/注册后可看大图

#$OLDPWD 保存了上一次所在的目录路径
               

                               
登录/注册后可看大图



回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-6-5 09:31:47 | 显示全部楼层
cd:切换目录
#cd  /PATH/TO/SOMEFILE   切换当前工作目录到指定目录(只能是目录,不能是文件)
[iyunv@localhost tmp]# cd /etc/sysconfig/network-scripts/
#cd - 切换到上一个工作目录
    [iyunv@localhost network-scripts]# cd -
    /tmp
    [iyunv@localhost tmp]#
#cd ..切换到上一层目录
    [iyunv@localhost tmp]# cd ..
    [iyunv@localhost /]#
#cd  /cd ~ :切换到用户的家目录
    [iyunv@localhost /]# cd
    [iyunv@localhost ~]#
    [iyunv@localhost etc]# cd ~
    [iyunv@localhost ~]#

#cd  -P /bin:切换到软链接的实际地址
#cd ~ - /sysconfig  切换到当前目录的上一层然后在进入指定层。
    [iyunv@localhost bin]# cd ~-/etc/      
    [iyunv@localhost etc]#
    当前目录路径为/bin,然后使用'~-/etc' 就切换到etc下,因为bin的父目录为 / ,然后etc的父目录也为 /,那么就是bin切出去一层在进入etc。
#cd ~+/sysconfig 切换到当前目录的指定层
    [iyunv@localhost etc]# cd ~+/sysconfig/network-scripts/
    [iyunv@localhost network-scripts]#
        在当前目录路径上切到子目录。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-6-5 09:34:45 | 显示全部楼层
ls:列出当前目录或指定目录的文件和目录
-a :显示包含隐藏文件的所有文件
[iyunv@localhost /]# ls -a
.  ..  .autofsck  .autorelabel  bin  boot  dev  etc  home  lib  lib64     //这里我没复制完。  带点‘.’的为隐藏文件。
- l : 显示文件或目录的详细信息
[iyunv@localhost /]# ls -l
               第一列    第二列   第三列到第五列       第六到八列 第九列
            dr-xr-xr-x.    2       root  root  4096      Jul 25 10:37  bin
            dr-xr-xr-x.    5       root  root  1024      Jul 25 09:10  boot
            drwxr-xr-x    20     root  root  3840      Jul 25 11:44  dev
            drwxr-xr-x.   102   root  root  12288    Jul 25 12:28  etc
            drwxr-xr-x.   3       root   root  4096     Jul 25 09:20  home
            dr-xr-xr-x.     11    root   root  4096     Jul 25 09:04  lib
            -rw-r--r--       1     root   root  151       Jul 25 14:10  testnet
            lrwxrwxrwx.  1      root   root   14         Jul 25 09:03  system-release -> centos-release
             // 列出当前目录的目录和文件的详细信息,其中:
                第一列第一位位字母:表示文件类型
                - : 表示普通文件
                d: 表示目录
                 l: 表示符号链接文件
                b: 表示块设备文件
                c: 字符设备文件
                p: 命令管道
                s:  套接字文件

                   第一列第2到10位字母:表示权限,每三位一组
                            第一组三位权限owner(r,w,x):表示属主的权限,属主为第三列的 root,只有属主本身才能使用此类权限
                            第二组三位权限group(r,w,x ):表示属组的权限,属组为第四列的root,包含在此组的所有用户可用此类权限进行访问
                            第三组三位权限other(r,w,x ) :表示其他用户的权限,除了不是本文件的属组,或包含在属组里的用户之外的权限
                    第二列数字:表示此文件被硬链接的次数
                    第三列到第四列字母:表示此文件的属主(onwer)和属组(group)

                    第五列为此文件的大小(size)

                    第六到第八列为此文件的mtime(更改时间)

                    第九列:文件名
-R:递归目录下的文件
        //显示目录下的目录和文件。
            [iyunv@localhost /]# ls -R /etc/
            /etc/abrt:
            abrt-action-save-package-data.conf  abrt.conf  gpg_keys  plugins

            /etc/abrt/plugins:
            CCpp.conf  oops.conf  python.conf

            /etc/acpi:
            actions  events

            /etc/acpi/actions:
            power.sh

            /etc/acpi/events:
            power.conf  video.conf
-d:目录自身,配合 -l  选项使用
            //列出目录自身的详细属性,不列出其内部的文件或目录
                [iyunv@localhost /]# ls -ld /
                dr-xr-xr-x. 25 root root 4096 Jul 25 13:01 /
                [iyunv@localhost /]#

-1:每个文件分行显示
    //将目录下的所有文件或目录每个文件为独立一行来显示
    [iyunv@localhost /]# ls -1
            bin
            boot
            dev
            etc
            home
            tmp
            usr
            var
            [iyunv@localhost /]#
-S: 按文件大小排序(从大到小排序)
  [iyunv@localhost /]# ls -lS /
        total 106                       此列为文件大小
        drwx------.   2 root root        16384   Jul 25 08:59 lost+found
        drwxr-xr-x. 102 root root      12288   Jul 25 12:28 etc
        dr-xr-xr-x.   2 root root         4096     Jul 25 10:37 bin
        drwxr-xr-x.   3 root root       4096     Jul 25 09:20 home
        drwxr-xr-x   20 root root       3840    Jul 25 11:44 dev
        dr-xr-xr-x.   5 root root         1024     Jul 25 09:10 boot
        drwxr-xr-x    2 root root        0 Jul     25 11:44 misc
        drwxr-xr-x   13 root root       0 Jul       25  2016 sys




文件名通配(glob)
*:匹配0个或多个任意字符
            //显示’ / ‘ 下面的以’ t ‘ 开头,后面跟0次或多次的任意字符的目录或文件
        [iyunv@localhost /]# ls -d /t*
        /testdir  /tmp

?:匹配任意单个字符
         // 显示’ / ‘ 下面的以’ s ‘ 开头,后面跟两个任意的1个字符的目录或文件
        [iyunv@localhost /]# ls -d /s??
        /srv  /sys

[]:指定范围内的任意单个字符[a-c]=aAbBc
        //显示’ / ‘ 下面的以’ d ‘ 开头,中间为 a到z 之间的任意一个字符,以b结尾的目录或文件。其中[a-z]包括(a,A,b,B,c,C,d,D.....到z,不包括大写Z)
        [iyunv@localhost /]# ls -d /l[a-z]b
        /lib
[^]:指定范围外的任意单个字符[^a-c]=[aAbBc]
         //显示’ / ‘ 下面的以’ d ‘ 开头,中间为非数字,以b结尾的文件
        [iyunv@localhost /]# ls -d /l[^0-9]b
        /lib
    可用于[],[^]的常用元字符。
        [0-9]:指定0-9之间的任意一个数字
        [a-z]:指定a-z之间的任意一个字母(其中有 a,A,b,B,c,C,d,D,e,E......一直到小z)
    以下元字符用在[],[^]里,列如:
        [iyunv@localhost /]# ls -d /s[[:alpha:]]*
        /sbin  /selinux  /srv  /sys/sTmp
             //表示以s开头,中间是字母(不区分大小写),以任意一个或个多字符结尾的目录或文件
        [:lower:]:所有小写字母
        [:upper:]:所有大写字母
        [:punct:]:所有标点字符
        [:digit:]:所有数字
        [:alnum:]:所有字母和数字
        [:alpha:]:所有字母(不区分大小写)
        [:space:]:所有空格字符


回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-6-5 09:35:31 | 显示全部楼层
stat:查看文件或目录状态
stat  FILE...

      [iyunv@localhost /]# stat /test
  File: `/test'      //文件名
  Size: 12288     //文件大小Blocks: 24        IO Block: 4096   directory
Device: fd00h/64768d //设备地址Inode: 1179649 //索引节点    Links: 102 //链接次数
Access: (0755/drwxr-xr-x)  Uid: (    0/    root)   Gid: (    0/    root)     //访问此目录权限,以及此文件属主和属组
Access: 2016-07-25 12:38:37.884763443 +0800     //最后一次访问此文件时间
Modify: 2016-07-25 12:28:44.165763586 +0800      //最后一次更改此文件的时间
Change: 2016-07-25 12:28:44.165763586 +0800     //最后一次改变此文件的时间
文件有两个数据:
        元数据:matedate
                //文件的属性值
        数据:date
                //文件内的文本数据
    元数据内的时间戳:
    access time(atime):访问时间,在读取文件或者执行文件时更改
    modify time(mtime) : 修改时间,,在写入文件时随文件内容的更改而更改。
    change time (ctime):改变时间,在文件的属性值更改儿更改,如更改权限、大小、索引值等。

回复 支持 反对

使用道具 举报

快速回复 返回顶部 返回列表
鲁ICP备16044790-1号 Copyright © 2008-2020 乐考网(www.5Lekao.com) 版权所有
| QQ| 乐考论坛