Linux文件管理命令详解

·复制和移动文件

    ->cp命令,复制文件的命令

        格式:cp SRC(可以有多个SRC) DEST(只能有一个DEST)

           1,如果SRC为一个文件,DEST也为一个文件,那么表示将DEST文件中的内容覆盖为SRC文件中的内容:

            Linux文件管理命令

           2,如果SRC为多个文件,DEST为一个目录,那么表示将SRC文件悉数复制进DEST目录中:

            Linux文件管理命令

           3,如果SRC为一个文件,DEST也为一个文件,但是DEST文件不存在,则表示新建一个DEST文件并且覆盖为SRC文件中的内容:

            Linux文件管理命令

        cp命令默认不可以复制目录,而只能复制文件(ommiting->表示略过的意思),但是cp -r选项可以复制目录:

        ->如果DEST目录存在,则表示将SRC目录放入到DEST目录里面

            Linux文件管理命令

        ->如果DEST目录不存在,则表示新建一个DEST目录,如果SRC目录有文件,则连同目录里面的文件一起复制过去

            Linux文件管理命令

            ATTR LIST表示属性列表的意思

        -p(=--preserve)选项表示的是,在复制文件的过程中保留源文件的元数据,因为我们的cp命令在复制文件的过程中,DEST文件的属主是执行cp命令的那个用户:

            Linux文件管理命令

        -a(=--archive)选项表示归档存放,常用于备份文件,比-p选项保留信息的更多,将文件原封不动的复制:

            Linux文件管理命令

        Symbolic Link->表示的是符号链接文件即软链接文件,相当于Windows中的快捷方式:

            Linux文件管理命令

            上图中文件位的小写字母l表示的就是链接文件的意思

        复制链接文件:

            格式->cp SRC(软链接) DEST

            Linux文件管理命令

            -L选项表示复制软链接文件所指向的文件,dereference

            Linux文件管理命令

            -P和-d选项都是将软链接文件复制成为软链接文件,称为保持软链接文件,复制后的软链接文件指向的还是原文件

            Linux文件管理命令

            -R选项和-r选项的功能一样,表示复制目录

            Linux文件管理命令

            cp命令也支持花括号展开机制

            Linux文件管理命令

    ->mv命令

        mv(move)表示的是移动文件

        格式:

            mv SRC(可以有多个) DEST(只能有一个)

                Linux文件管理命令

              mv SRC DEST(若DEST文件不存在,则表示将SRC文件重命名为DEST文件)

                Linux文件管理命令

            mv SRC(目录) DEST

                ->若DEST不存在,则表示将SRC目录重命名为DEST目录

                    Linux文件管理命令

                ->若DEST存在,但是如果DEST不是目录,则不允许移动

                    Linux文件管理命令

                ->若DEST存在且DEST为目录,则表示将SRC目录的上一层路径改为DEST目录的路径

                    Linux文件管理命令

            mv SRC DEST->若SRC与DEST都存在,且同为文件或同为目录,如果同为文件,则表示将SRC文件重命名为DEST文件,但是将DEST文件里的内容覆盖为SRC文件里的内容:

                Linux文件管理命令

            如果同为目录,则表示将SRC目录重命名为DEST目录,并且将SRC目录得上一层路径改为DEST目录的路径:

                Linux文件管理命令

            mv命令是mv -i命令的命令别名,表示mv命令默认进入交互模式,而mv -f表示强制覆盖文件内容,不进入交互模式:

                Linux文件管理命令

            -t选项表示反向更改文件或目录路径

                格式:mv -t DEST(必须为目录) SRC

                Linux文件管理命令

    ->install命令

        install命令用来复制文件,并指定文件属性

            格式:install SRC DEST,使用install命令复制的文件有执行权限

            Linux文件管理命令

            install命令相当于cp命令

                -d选项表示创建目录,可以创建多个目录

                Linux文件管理命令

                install不可以用来复制目录

                Linux文件管理命令

                -t选项和mv -t的功能一模一样

                Linux文件管理命令



·GPL

    General Public License(通用公共许可证),GNU项目的版权(Copyleft)

·BSD(FreeBSD)

    Berkerley Software Distribution,Unix的一个重要分支,由Bill Joy开发,Sun公司的创始人

·Apache

    以上都是*软件的开源协定,以及版权描述

·Linux官方网站

    www.kernel.org,Linux仅提供内核与内核提供的工具,而GNU/Linux提供由源代码编译好的外围软件

·发行版

    即可安装载体(Linux Distribution->提前编译好的套件=kernel+softwares+tools)

    三大主流Linux发行版:

        ->RedHat

            Fedora为RedHat提供桌面,Centos基于RedHat,RedHat、Fedora以及Centos都以RPM的方式安装软件

        ->SUSE

            SUSE也是以RPM的方式安装软件

        ->Debian

            Ubuntu和Mint基于Debian,Debian和Ubuntu使用dpkg的方式安装软件

    编译指的是将源程序转换为可以在相应硬件平台上执行的二进制程序的过程,因为我们的计算机能执行的只是一些编译好的二进制程序

    我们的RedHat系统利用的是使用通用格式编译好的一堆外围软件

    Gentoo系统的外围软件得自己在自己的硬件平台上编译

    LFS(Linux From Scratch(起跑线))系统,这个系统更甚于Gentoo,这是一个深度掌握Linux的工具

·Linux目录管理命令

    ls命令

    cd命令

    pwd命令

        -P选项,表示的是打印当前目录的真实路径而不是当前路径的软链接路径

            Linux文件管理命令

    mkdir命令

        -m选项,表示直接指定目录权限

            Linux文件管理命令

    rmdir命令

    tree命令

·Linux文件管理命令

     ->touch命令

        创建新文件或者修改时间戳

        创建新文件:

        Linux文件管理命令

        修改atime:

        Linux文件管理命令

        修改mtime:

        Linux文件管理命令

        修改ctime:

        Linux文件管理命令

    ->stat命令

        查看文件或目录的元数据

        Linux文件管理命令

    ->file命令

        查看文件或目录的内容类型

        Linux文件管理命令

    ->nano

        文件编辑器

·日期时间相关命令

    date命令

    clock命令

    hwclock命令

    cal命令

·Linux系统中查看文本文件的命令

    ->cat命令

        cat(=dump倾倒)命令表示连接并显示文本文件

            Linux文件管理命令

        -n选项表示显示行号(常用选项)

            Linux文件管理命令

        -E选项表示显示文本文件中每一行的结束符

            Linux文件管理命令

            Linux系统中文本文件的行结束符为$($即为回车键)

        -T选项表示显示制表符

            Linux文件管理命令

            ^I即为制表符

        -v选项表示显示非打印字符

            Linux文件管理命令

        -A选项表示显示所有符号

            Linux文件管理命令

    ->tac命令

        从尾部向首部依次显示文本文件的内容

        Linux文件管理命令

        Ctrl+c表示interrupt终止命令

·分屏显示文本文件内容的命令

    ->more命令:more命令到达文件尾部的时候会自动退出文件

        空格键表示向后翻一屏

        b键表示向前翻一屏

        回车键表示向后翻一行

    ->less命令

        相当于man手册,我们的man手册就是调用less命令来打开文本文件的

        q键退出文件

·查看文本文件部分内容的命令

    ->head命令

        查看文本文件的前n行内容,n默认为10

        Linux文件管理命令

        -n #表示指定显示前#行内容

        Linux文件管理命令

    ->tail命令

        查看文本文件的后n行内容,n默认为10

          Linux文件管理命令

        -n #表示显示指定的后#行内容

          Linux文件管理命令

        -f选项表示监控文本文件有没有新增加的内容,因为文本文件的新增内容都是从文件尾部添加进去的

        默认只监控文件的后10行

        Linux文件管理命令

        还可以加上-n #来指定监控的尾部行数

        Linux文件管理命令

·文本处理命令

    ->cut命令

        文本剪切命令

        使用格式:cut -d(指定文本文件中的分隔符,默认为空格) -f #(指定字段) file

            Linux文件管理命令

            -f选项表示指定要显示的字段

                数字之间","隔开表示离散显示字段

                Linux文件管理命令

                数字之间"-"隔开表示连续显示字段

                Linux文件管理命令

    ->join命令

        文本拼凑命令

    ->sed与awk命令

        这两个命令难度很大,awk命令是一种报告生成命令

    Linux的三大文本处理利器:

        sed

        awk

        grep

·database(数据库)

    MySQL是一种数据库管理系统,而不是数据库

    ->关系型数据库

        表(二维表):可以没有行,但是不能没有列

        文本文件:利用分隔符隔开各个项目,比如我们的/etc/passwd文件