文件管理基础命令之二

Linux文件列表命令 :ls

      ls:list ,列出目录内容

      用法:ls [-aAdhl]  //ls 的参数很多,这里介绍常用的几种

      不加参数,直接 ls ,可列出目录的内容,包括文件和子目录的名称。

      -a :列出全部的文件,包括隐藏的目录和隐藏的文件(以.开头的文件) 

      -A :列出全部的文件,包括隐藏的目录和文件(但不包括 . 与 .. 这两个目录)

      -d :仅列出目录本身,而不是列出目录内的文件数据

      -h :将文件容量以人类较易读的方式(例如GB、KB等) 列出来

      -l  :列出文件并显示文件的属性和权限等信息

文件管理基础命令之二

 

 

 

 

 

Linux文件拷贝命令:cp常见用法

 

      cp:copy  拷贝

 

      用法:cp  [-adfilprsu] 源文件 目标

 

      不加参数,直接 cp 源文件 目标 (目标可以是文件名也可以是目录名)

 

      -a :尽可能将档案状态、权限等资料都照原状予以复制。

 

      -r :若 source 中含有目录名,则将目录下之档案亦皆依序拷贝至目的地。

 

      -f :若目的地已经有相同档名的档案存在,则在复制前先予以删除再行复制。

 

      在默认的条件中,cp的源文件与目的文件的权限是不同的,目的文件的所有者会是执行命令的用户。

 

      -u :差异复制,常用在备份里面

文件管理基础命令之二

 1:以root身份,将/etc/passwd文件复制到/tmp下

2: 变换目录到/tmp,并将/var/log/wtmp 复制到/tmp观察属性;  #注意,在不加任何选项的情况下,文件的某些属性/权限会改变

3:如果你想要将文件的所有特性都复制过去怎么办,可以加一个 –a 参数

默认情况下,cp的来源档和目的档的权限是不同的,目的档的拥有者通常会是指令操作者本身,就如上面的看到的一样,由于我是root身份,因此复制过来的档案拥有者和群组就变成root所有了。

4:将/etc/这个目录下的所有内容到/tmp底下

5:

cp -f 参数

      若目的地已经有相同档名的档案存在,则在复制前先予以删除再行复制,其实就是force的意思,强制复制,默认是需要询问的

 

 

 

   cp -u用于增量备份,当你做备份的时候,cp -u只会复制那些有新增或者已经有变化的文件,相同属性并存在的文件不会再重新复制,大大的提供了备份速度。

 

      这里为了测试,我会先在/tmp/test 目录下新建1.txt,2.txt两个文件,将其复制到/tmp/123目录中,然后我再次在/tmp/test 目录下新建3.txt文件,再次复制到/tmp/123下面,我分别用不加 –u参数和用-u参数做对比。

 

文件管理基础命令之二

 

 

 

 

文件移动命令 :mv

      mv:move  移动文件,还有重命名的作用

      用法:mv [-fiu] source destination

      -f:强制移动,不会出现警告信息

      -i:互动模式,移动之前询问你

      -u:目标存在的时候,只有source比较新才会更新

      用法和cp命令差不多,区别在于一个是复制,一个是剪切。这里演示一下重命名的作用:

      切换到/tmp 目录下,用touch新建一个test.txt,然后用mv 重命名为456.txt

文件管理基础命令之二

 

 

 

 

 

 

 

文件或者目录删除命令:rm

      rm:remove 移除

      用法:rm [-fir] 文件或目录

      不加参数,直接用rm 文件,可以删除文件

      -f:强制删除,不会出现警告信息

      -i:互动模式,删除之前询问你

      -r:递归删除,最常用在目录的删除,很危险的参数

      例:删除我们之前在/tmp/test目录下新建的1.txt ,2.txt,3.txt 和/tmp/123目录,分别用以上不同的参数

文件管理基础命令之二

 

 

 

 

 Linux文件重命名有两种方式:mv和rename(参考自CSDN博主「失忆的鱼」:https://blog.csdn.net/qq525003138/article/details/106604989)

 mv一次只能重命名一个文件,而且,它是移动命令。如果destFile已经存在的话,会直接装原文件覆盖,从而造成文件的丢失。

 

 

rename才是真正的批量重命名命令。而且他是3个参数,不是2个。

rename arg1 arg2 arg3
arg1:旧的字符串
arg2:新的字符串
arg3:匹配要重命名的文件,可以使用3种通配符,*、?、[char],*表示任意多个字符,?表示单个字符,
[char]匹配char单个自定的精确字符,可以填写任意字符,foo[a]*表示只匹配fooa开头的文件名,如果
一个文件是foobcc.txt,是不会被匹配的。

find用法请参考https://blog.csdn.net/shenlanzifa

文件管理基础命令之二

上一篇:ASP.NET WebApi 开放数据


下一篇:021中国大学生程序设计竞赛(CCPC)- 压力测试赛题解