美文网首页Hyman7和他的Linux学习之路
Day03-CentOS7 Linux目录结构学习

Day03-CentOS7 Linux目录结构学习

作者: 郝煜_Hyman | 来源:发表于2019-07-26 16:06 被阅读26次

    一、Linux系统目录结构和Windows系统目录结构的区别

    Linux:以单根的方式组织文件(/)

    [root@centos7-day1-10 ~]# ls /
    bin dev home lib64 mnt proc run srv tmp var
    boot etc lib media opt root sbin sys usr

    Windows:以多根的方式组织文件(C:\ D:\ E:\ F:\)

    Windows的目录结构
    Linux系统目录结构
    1.存放命令相关的目录

    /bin:普通用户使用的命令
    /sbin:超级管理员使用的命令

    2.存放用户相关数据的家目录

    比如:windows不同的用户登陆系统显示的桌面背景不一样
    /home,普通用户的家目录, 默认为/home/username /home/test 环境变量的设定
    /root,超级管理员root的家目录, 普通用户无权操作

    3.系统文件目录

    /usr,相当于C:\Windows
    /usr/local,软件安装的目录,相当于C:\Program File
    /usr/bin/,普通用户使用的应用程序(重要)
    /usr/sbin,管理员使用的应用程序(重要)
    /usr/lib, 库文件Glibc 32bit
    /usr/lib64,库文件Glibc 64bit

    4.启动目录

    /boot 存放的系统启动相关的文件,例如:kernel,grub(引导装载程序)

    5.配置文件目录

    /etc,极其重要,后续所有服务的配置都在这个目录中
    /etc/sysconfig/network-script/ifcfg-,网络配置文件
    /etc/hostname,系统主机名配置文件
    /etc/resolv.conf,dns客户端配置文件
    /etc/hosts,本地域名解析配置文件 C:\Windows\System32\drivers\etc

    6.可变的目录与临时目录

    /var,存放一些变化文件,比如/var/log/下的日志文件
    /var/tmp,进程产生的临时文件
    /tmp,系统临时目录(类似于公共厕所)

    7.设备目录文件

    /dev,存放设备文件,比如硬盘,硬盘分区,光驱,等等
    /dev/sd sda sdb sdc4
    /dev/null,黑洞设备,只进不出。类似于垃圾回收站
    /dev/random,生成随机数的设备.
    /dev/zero,能源源不断的产生数据,类似于取款机,随时随地取钱

    8.虚拟的文件系统 (如对应的进程停止则/proc下对应目录则会被删除)

    /proc,反映当前系统正在运行进程的实时状态
    PS:类似于汽车在运行过程中的仪表板,能够看到汽车的油耗、时速、转向灯、故障等等

    9.PS: 在Linux7系统中, /bin, /sbin, /lib, /lib64都以软链接的形式链接到/usr/目录下

    /bin --> /usr/bin
    /sbin --> /usr/sbin
    lib -> usr/lib
    lib64 -> usr/lib64

    media #提供设备的挂载点
    mnt #提供设备的挂载点
    opt #第三方工具默认安装的目录
    run #进程运行的pid,(放在一个文件中) lock相关文件

    二、文件定义

    比如: /etc/hostname,整个文件中包含文件名称以及文件所在的位置,
    我们将这个叫做路径,也就是说我们是通过路径对文件进行定位。

    提问FQ: /home/oldboy/file 和/home/oldgirl/file是否是同一个文件?
    不一样。
    提问FQ: /abc/test 和 abc/test 是一样的吗?
    不一样。


    绝对路径: 只要以 / 开始的都算绝对路径 ls /a.txt
    相对路径: 相对于当前目录来说 ls a.txt ls ./a.txt ls ../a.txt [/home/oldboy]

    . 和 .. 是什么什么?
    . 代表当前目录
    .. 代表当前目录的上一级目录

    [root@oldboyedu network-scripts]# cd /usr/ #进入/usr

    [root@oldboyedu usr]# pwd #打印当前所在的位置
    /usr

    相对路径方式

    [root@oldboyedu usr]# #cd local/
    [root@oldboyedu usr]# cd ./local/
    [root@oldboyedu local]# pwd
    /usr/local

    绝对路径的方式

    [root@oldboyedu local]# cd /usr/local

    绝对路径 ~ 当前用户的家目录 root = /root oldboy = /home/oldboy

    [root@bgx /]# ls /home/alice/file1
    [root@bgx /]# ls ~/file2 #/root/file2
    [root@bgx /]# ls ~/alice/file3 #/root/alice/file3

    相对路径

    [root@bgx /]# mkdir abc #创建一个abc目录 /abc目录
    [root@bgx /]# ls ../file3 #查看上一级目录的file3文件 [检查当前所在的位置]
    [root@bgx /]# ls file4 #查看当前目录file4文件
    [root@bgx /]# ls abc/file5 #查看当前目录下的abc目录下的file5文件

    使用相对路径和绝对路径,到底使用哪一个? 没有明确的说法

    [root@oldboyedu ~]# cd /etc/sysconfig/network-scripts/
    [root@oldboyedu network-scripts]# #cd /tmp/
    [root@oldboyedu network-scripts]# cd ../../../tmp/
    [root@oldboyedu tmp]# pwd
    /tmp

    cd改变目录,常见的使用方法

    # cd 绝对路径 cd /etc/hostname
    # cd 相对路径 cd test/abc cd . cd ..
    -------------------------------------
    # cd      #切换目录,例: cd /etc 
    # cd -    #切换回上一次所在的目录
    # cd ~    #切换回当前用户的家目录,注意:root和普通用户是否有所不同吗?
    # cd .    #代表当前目录,一般在拷贝、移动等情况下使用 cp /etc/hostname ./
    # cd ..   #切换回当前目录的上级目录
    

    三、基本 创建 复制 移动 删除 命令

    mkdir: 创建目录

    [root@oldboyedu ~]# mkdir oldboy1 #在当前目录下创建oldboy1目录
    [root@oldboyedu ~]# mkdir oldboy1/oldboy2/oldboy3/oldboy4/ -pv #一次创建多个目录

    1.创建从1-100个目录.

    [root@oldboyedu ~]# mkdir {1..100}

    2.创建dir-1到dir-50个目录怎么办

    [root@oldboyedu ~]# mkdir dir-{1..50}

    3.了解即可

    [root@oldboyedu ~]# mkdir /opt/{bin,logs,conf}/test -pv


    touch: 创建一个空的文件

    [root@oldboyedu ~]# touch ribao.txt


    mv: 移动文件 mv 源文件 目标位置

    [root@oldboyedu ~]# mv ribao.txt dir-7/ #将ribao.txt移动到dir-7目录中
    [root@oldboyedu ~]# mv file /tmp/tttt #将当前目录下的file文件移动到/tmp/下并修改名称为tttt
    [root@oldboyedu ~]# mv hostname test #将hostname文件名称修改为test
    [root@oldboyedu ~]# mv dir-1 dir-2 dir-3 test dir-15/ #将多个文件或目录移到到指定的位置
    [root@oldboyedu ~]# ls dir-15/

    dir-1 dir-2 dir-3 test

    rm: 删除文件或者目录 -f 强制删除 -r 递归删除

    [root@oldboyedu ~]# rm -f file1 #删除一个文件
    [root@oldboyedu ~]# rm -rf 99/
    [root@oldboyedu ~]# rm -rf dir-*

    PS: 在使用rm删除时, 文件用-f 目录才加-r 尽可能不要-rf一起使用

    相关文章

      网友评论

        本文标题:Day03-CentOS7 Linux目录结构学习

        本文链接:https://www.haomeiwen.com/subject/peqdrctx.html