Day 3-bash文件管理rm

优秀的人往往都是对自己要求更高的人,而普通的人往往对自己要求马马虎虎,缺少高标准要求,其实这是优秀和普通的关键区别。                   ——老男孩思想

Bash 文件管理

   对文件或目录进行创建、复制、移动、删除、编辑、查找、等等.....

1.Linux系统目录结构

    ——Windows:以多根的方式组织的文件 例如C:\  D:\  E:\

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

Day 3-bash文件管理rm_第1张图片

<1>存放相关命令的目录

    /bin目录:普通用户使用的命令  /bin/ls, /bin/date

   /sbin目录:管理员使用的命令  /sbin/service

<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相关文件

2.文件定义

        比如: /etc/hostname,整个文件中包含文件名称以及文件所在的位置,

    我们将这个叫做路径,也就是说我们是通过路径对文件进行定位。

    a.提问FQ: /home/oldboy/file 和/home/oldgirl/file是否是同一个文件?

    b.提问FQ: /abc/test 和 abc/test 是一样的吗?

    <1>绝对路径:只要以 / 开始的都算绝对路径 ls /a.txt

    <2>相对路径:相对于当前目录来说 ls  a.txt  ls ./a.txt ls ../a.txt  [/home/oldboy]

        . 和 .. 是什么什么?

    . 代表当前目录

    .. 代表当前目录的上一级目录

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

        cd 绝对路径 例:cd /etc/hostname

        cd 相对路径 例:cd test/abc cd . cd ..

       cd      #切换目录,例: cd /etc

        cd -    #切换回上一次所在的目录

        cd ~    #切换回当前用户的家目录,注意:root和普通用户是否有所不同吗?

        cd .    #代表当前目录,一般在拷贝、移动等情况下使用 cp /etc/hostname ./

        cd ..  #切换回当前目录的上级目录

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

<1>mkdir:创建目录    

<2>touch:创建一个空的文件

<3>mv:移动文件

Day 3-bash文件管理rm_第2张图片

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

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


练习题

1.如何查看当前所在的目录?

    pwd

2.如何快速从当前目录切换到家目录?

  cd

3.如何快速返回上一次所在的目录?

    cd -

4.在oldboy目录下进入根目录下的etc目录下的yum.repos.d目录

    新建 mkdir oldboy

    进入 cd /oldboy

    然后 cd /etc/yum.repos.d

5.在当前所在的yum.repos.d目录快速返回到当前目录的上级目录(根目录下的etc目录)

    cd ..

6.将根目录etc下的resolv.conf和hosts文件一次性复制到job目录下

    新建 mkdir /job

    cp /etc/{resolv.conf,hosts} /job

7.返回到家目录,删除家目录下oldboy目录及该目录下的所有文件

      cd                    rm -rf oldboy

8.解释linux系统下“绝对路径”和“相对路径”的区别

      绝对路径:路径的写法一定是由根目录 / 写起的,例如 /usr/local/mysql

    相对路径:路径的写法不是由根目录 / 写起的,例如 首先用户进入到 /home,然后再进入到test,

执行的命令为 “#cd /home,#cd test”。此时用户所在的路径为 /home/test。第一个cd命令后紧跟/home,

前面有斜杠;而第二个cd命令后紧跟test,前面没有斜杠。这个test是相对于/home目录来讲的,所以称为相对路径。

扩展题

1.在家目录下创建一个名为oldboy的目录,然后进入该目录

    新建 mkdir oldboy

    进入 cd /oldboy

2.使用创建文件的命令一次性批量创建(oldboy1,oldboy2,oldboy3,oldboy4,oldboy5)这几个文件

    mkdir oldboy{1..5}

3.用ls -a随便查看一个目录,发现每个目录下都会有两个名为“.”和“..”的目录,解释它们分别代表的含义

    . 代表当前目录

    .. 代表当前目录的上一级目录

4.在oldboy下创建一个名为student.txt的文件

      touch oldboy/student.txt

5.在家目录下创建oldboy目录下名为oldboyedu的目录,然后将先前创建的名为student.txt的文件复制到家目录下

      mkdir oldboy/oldboyedu

      cp oldboy/student.txt ~

6.在家目录下创建一个名为job的目录,并将先前创建的名为oldboy目录及目录下的文件一次性复制到job目录下

      mkdir job

      cp - r oldboy job

你可能感兴趣的:(Day 3-bash文件管理rm)