文件管理工具:

         cp,  mv , rm

cp命令:

         全称:copy

         先要理解,这个命令中的两个对象,源文件,目标文件/目标目录,当源文件有多个时,cp的目标必须是一个目录。

复制一般是针对文件的数据而言的。

         语法:

                    cp [OPTION]... [-T] SOURCE DEST           //      单源复制(只有一个源文件)

           cp [OPTION]... SOURCE... DIRECTORY //      下面两个为多源复制

        cp [OPTION]... -t DIRECTORYSOURCE...

单源复制:

         cp[OPTION]... [-T] SOURCE DEST             //DEST,表示目标路径

如果DEST不存在,则事先先创建此文件,并复制源文件的数据流至DEST

如果DEST存在:(有两种情况)

         如果DEST是非目录文件,则覆盖目标文件

         如果DEST是目录文件,则先在DEST目录下创建一个与源文件同名的文件,并复制数据流

注意:cp默认不支持源,是目录。

 

 

多源复制:

           cp [OPTION]... SOURCE... DIRECTORY

      cp [OPTION]... -t DIRECTORY SOURCE... //与上面的不同之处就是用-t指定了目标路径

如果DEST不存在,则不能复制,报错。

如果DEST存在:(有两种情况)

         如果DEST是非目录,错误。

         如果DEST是目录文件,分别复制每个文件,至目标目录,并保持原名。 

常用选项

         -i:      交互式复制,即覆盖时提醒用户确认。

         -f:     强制覆盖目标文件;

         -r-R  递归复制目录;

         -d:    复制符号链接文件本身,而非其指向的源文件same as --no-dereference(引用)                                                                                                                                       --preserve=links

                   --no-dereference:never follow symbolic links in SOURCE(翻译:连接文件从不连接到                                                                                                                                               源文件)

         -d等同于--no-dereference

         --preserve=links     //保留连接文件的属性,也就是说复制的时候复制连接文件指向的源                                                文件内容。

         -a:    --archive-dR --preserve=all,用于实现归档,我们可以理解为备份。

         --preserve=

                   mode:权限

                   ownership:属主和属组

                   timestamps:时间戳

                   contest:安全标签

                   xattr:扩展属性

                   links:符号链接        

                   all:    上述所有属性

 

 

演示:

-d选项,如果复制一个连接文件,但是不加-d选项,则我们复制的是连接文件指向的真是文件的内容,实验中显示为绿色

当我们复制连接问件时,加上-d选项,则我们复制的仅仅是连接问件,但是没有内容,显示为红色。

文件管理命令及变量基础_文件

文件管理命令及变量基础_命令_02

 

mv命令:

         全称:move

         mv- move (rename) files(翻译:移动或重命名文件)

         语法:

                   mv[OPTION]... [-T] SOURCE DEST

        mv [OPTION]... SOURCE...DIRECTORY

        mv [OPTION]... -t DIRECTORYSOURCE...

第一种用法:

         当源文件与目标文件在同一个目录下的时候,mv是重命名。如果不在同一个目录下则表示移动。

         mvcp不同的地方:mv对目录重命名的时候,不需要加上-r,直接源目录,目标名称

演示:

         文件管理命令及变量基础_管理_03

如果mv操作文件时,对应的源文件有多个时,则目标也一定是一个目录。

常用的选项:

         -i:      交互式

         -f:     强制force

注意:mv在移动文件或者目录时,与cp不同的是,mv移动后,源文件或者目录没删除

 

 

rm命令:

         全称:remove

rm - remove files or directories(翻译:删除文件或目录)

         语法:

         rm[OPTION]... FILE...

         常用选项:

                   -i:      交互式

                   -f:     强制

                   -r-R:      递归

删除目录常用的操作

         rm  -rf /PATH/TO/DIR

                   尤其慎重执行:rm  -rf /   (删除根目录)

但是这个操作在centos6,centos7,上已经被自动禁止了。但在centos5上可以直接删除

演示:

[root@localhost hello]# rm -rf /                         //执行删除根操作

rm: it is dangerous to operate recursively on `/'              ///上执行递归操作十分危险

rm: use --no-preserve-root to override this failsafe  //使用--no-preserve-root选项跳过安全模式,这个提示就是告诉用户,如果真要删除根目录,则加上--no-preserve-root这个选项。

[root@localhost hello]#

注意:rm这个命令特别危险,所以系统自定义了别名,也就是在管理员执行操作的时候,每次都要询问管理员是否真的要执行删除操作。其实mv系统也同样定义了别名,交互。

文件管理命令及变量基础_命令_04

rm删除文件:

并且我们在执行rm命令的时候,出现了询问时,如果我们不给y进行确认,而是直接回车,则不会执行删除操作。

[root@localhost hello]# ls

myfile rc.local  y

[root@localhost hello]# rm rc.local

rm: remove regular file `rc.local'?                    //直接回车

[root@localhost hello]# ls

myfile rc.local  y                             //发现rc.local文件还有

[root@localhost hello]# rm rc.local

rm: remove regular file `rc.local'? y         //给了一个yyes确认

[root@localhost hello]# ls

myfile y                   //发现rc.local文件被删除了

[root@localhost hello]#

rm删除目录

         删除目录时需要用到 -r,或-R选项,进行递归删除。而且为了避免删除目录时,由于删除一个文件就询问一次,再我们确定目录及文件不用时,我们可以加上选项-f强制删除目录

演示:

[root@localhost hello]# ls

myfile y                                                         //y是目录

[root@localhost hello]# rm  -rf  y        //强制删除目录

[root@localhost hello]# ls

myfile

[root@localhost hello]#

总结:

由于linux文件系统是ext类型的,对于文件恢复是很难的,所以导致rm命令实在太危险,所以我们在实际工作中,最好是建立一个目录,将暂时用不到的文件或目录移动到该目录下,然后过段时间,觉得这些文件真的没用了,我们在进行删除。(模拟回收站

 

变量

         定义:命名的内存空间

         变量的类型:

(整型,浮点型,字符型,布尔型,日期时间型)

         对于计算机而言事实上数据只有两种类型,并且他们存储机制是不同的,变量类型决定了数据的存储格式,所能表示的数据大小范围也确定了,能够参与的运算也确定了。

                   字符型:

                   数值型:

                            精确数值型

                            近似数值型

                   变量类型决定了:存储格式,数据范围,参与运算;

计算机最小的存储单位是字节byte,  1byte=8bit1字节=8位)

         存储格式:

                   十进制8:在计算机表示:00001000

         字符存储:需要用到16位二进制,一共是2^16=65536

 

变量的复制操作:

         就是想命名的存储空间中存储数据