Linux文件管理

Linux教程

Linux文件管理

本文介绍如何在Linux上创建文件、删除文件、复制文件、移动文件

  • 使用touch命令在linux上创建文件
  • 使用rm命令在linux上删除文件
  • 使用cp命令在linux上复制拷贝文件
  • mv命令在linux上移动或重命名文件

文件简介

Linux中文件可以分为普通文件、目录文件、链接文件、设备文件和管道文件

Linux中文件名的命名规则

  • 文件名区分大小写
  • 文件名的长度不能超过255个字符
  • 可以用除了/以外的任何字符如A-Z、a-z\0-9等来命名。不能以/来命名的原因是因为它是目录的分隔符,以它命名文件,系统将无法分辨它是文件名还是目录的一部分
  • 以点号开头的文件为隐藏文件,所以普通文件尽量不要以.开头命名
  • 对于Linux文件而言,后缀名这个概念无意义,加或不加都无所谓,仅仅是为了方便区分

touch:创建文件

touch语法

功能说明:改变文件或目录时间
语法touch 文件名称
选项与参数:

  • -c--no-create:如果文件不存在,不建立任何文件,也不提示
  • -d<时间日期>:使用指定的时间日期,而非现在的时间
  • -t<日期时间> :使用指定的日期时间,而非现在的时间
  • -a:改变文件的访问时间为系统当前时间,无需设置时间选项
  • -m:改变文件的修改时间为系统当前时间,无需设置时间选项
  • -r:把指定文件或目录的日期、时间都设成和参考文件或目录的日期、时间想通过

简单使用

创建新的空白文件


[root@localhost ~]# touch test   #创建一个名为“test”的新的空白文件 
[root@localhost ~]# touch test.txt           #创建一个名为“test”的新的空白文本文件

更改文件的访问时间为系统当前时间

[root@localhost ~]# touch -a test  #改变test文件的访问时间为系统当前时间
[root@localhost ~]# touch -a test.txt  #改变test.txt文件的访问时间为系统当前时间

更改文件的修改时间为系统当前时间

[root@localhost ~]# touch -m test  #改变test文件的修改时间为系统当前时间
[root@localhost ~]# touch -m test.txt  #改变test.txt文件的修改时间为系统当前时间

将test.txt文件的访问时间修改为test文件的访问时间

[root@localhost ~]# touch -a -r test.txt test

将test.txt文件的修改时间设置为2020年1月1日1点11分

[root@localhost ~]# touch -d "20200101 11:11" test.txt

rm(移除文件)

英文:rmremove的简写

rm语法

功能说明:删除文件或目录
语法:

rm [参数] [文件或目录]

选项与参数:

-f--force:强制删除文件或目录,如果文件和目录已经存在则不再询问是否删除,直接进行强制删除
-i--interactive:互动模式,删除存在的文件或目录之前先询问用户是否进行删除操作
-r-R--recursive:递归删除,将指定目录下的所有文件及目录一并删除!最常用在目录的删除

简单使用

删除test.txt文件

[root@localhost ~]# rm test.txt #删除test.txt文件

删除空目录

[root@localhost ~]# rm dir #删除dir空目录

删除非空目录

[root@localhost ~]# rm -rf dir #删除dir非空目录

注意:使用rm命令时要特别小心注意,rm -rf组合要慎重使用,使用前要再三确认命令的正确性,因为一旦文件被删除,就不能被恢复,请再三确认后使用

cp(复制拷贝文件)

cp语法

功能说明:复制拷贝文件和目录
语法

cp [参数] [源文件或源目录] [目标文件或目录]

选项与参数:

-a:在复制目录时保留链接、文件属性,并递归地复制目录
-d:复制时保留链接
-f--force:为强制(force)的意思,强行复制文件和目录,不论目标文件和目录是否存在
-i--interactive:若目标文件或目录已经存在时,进行覆盖时会先询问是否进行覆盖
-l--link:对源文件建立硬链接,而非复制文件本身
-p--preserve:保留源文件或目录的属性,而非使用默认属性(备份常用);
-r:递归处理,将制定目录下的文件与子目录一并复制;(常用)

简单使用

复制文件

/root/test.txt文件复制到根目录/

[root@localhost ~]# cp /root/test.txt /

复制文件并改名

/root/test.txt文件复制到根目录/,并重命名为test

[root@localhost ~]# cp /root/test.txt /test

复制目录

复制/root/dir目录中的所有文件和子目录到根目录

[root@localhost ~]# cp -r /root/dir /

mv (移动文件或修改文件名称)

mv语法

功能说明:移动或重命名存在的文件或目录
语法:

 mv [参数] [源文件或目录] [目标文件或目录]

选项与参数:

  • -b或--backup:若需覆盖文件,则覆盖前先进行备份-
  • -f--force:如果目标文件或目录已经存在,则直接覆盖现有的文件或目录
  • -i--interactive:若目标文件或目录已经存在时,进行覆盖时会先询问是否进行覆盖
  • -u--update:在移动或更改文件名时,若目标文件已存在,且其文件日期比源文件新,则不覆盖目标文件

简单使用

移动文件

/root/test.txt文件移动到根目录/

[root@localhost ~]# mv /root/test.txt /

移动文件并改名

/root/test.txt文件移动到根目录/,并重命名为test

[root@localhost ~]# mv /root/test.txt /test

移动目录

移动/root/dir目录中的所有文件和子目录到根目录

[root@localhost ~]# mv  /root/dir /

重命名文件或目录

将test文件重命名为test2,将dir目录重命名为dir2

[root@localhost ~]# mv  /root/test /root/test2 #将test文件重命名为test2
[root@localhost ~]# mv  /root/dir /root/dir2 #将dir目录重命名为dir2

你可能感兴趣的:(Linux文件管理)