1复制命令 cp 2查看 文件大小du df 3查看文件绝对路径 which where 文件名

来源:互联网 发布:javascript 提取中括号 编辑:程序博客网 时间:2024/05/07 23:46
cp命令    说明:该命令把指定的源文件复制到目标文件或把多个源文件复制到目标目录中。


语法: cp [选项] 源文件或目录 目标文件或目录


 该命令的各选项含义如下:


  - a 该选项通常在拷贝目录时使用。它保留链接、文件属性,并递归地拷贝目录,其作用等于dpR选            项的组合。


  - d 拷贝时保留链接。


  - f 删除已经存在的目标文件而不提示。


  - i 和f选项相反,在覆盖目标文件之前将给出提示要求用户确认。回答y时目标文件将被覆盖,是交             互式拷贝。


  - p 此时cp除复制源文件的内容外,还将把其修改时间和访问权限也复制到新文件中。


  - r 若给出的源文件是一目录文件,此时cp将递归复制该目录下所有的子目录和文件。此时目标文件              必须为一个目录名。


  - l 不作拷贝,只是链接文件。
 cp
          需要说明的是,为防止用户在不经意的情况下用cp命令破坏另一个文件,如用户指定的目标             文件名是一个已存在的文件名,用cp命令拷贝文件后,这个文件就会被新拷贝的源文件覆               盖,因此,建议用户在使用cp命令拷贝文件时,最好使用i选项。


cp [选参数]  想要复制的源文件  复制到哪里文件夹名-p
 $ cp - i exam1.c /usr/wang/shiyan1.c


  该命令将文件exam1.c拷贝到/usr/wang 这个目录下,并改名为 shiyan1.c。若不希望重新命名,可以使用下面的命令:


  $ cp exam1.c /usr/ wang/


  $ cp - r /usr/xu/ /usr/liu/ 将/usr/xu目录中的所有文件及其子目录拷贝到目录/usr/liu中。


  mv命令


  用户可以使用mv命令来为文件或目录改名或将文件由一个目录移入另一个目录中。该命令如同DOS下的ren和move的组合。


  语法:mv [选项] 源文件或目录 目标文件或目录


  说明:视mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的目录中。当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它将所给的源文件或目录重命名为给定的目标文件名。当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,mv命令将各参数指定的源文件均移至目标目录中。在跨文件系统移动文件时,mv先拷贝,再将原有文件删除,而链至该文件的链接也将丢失。


  命令中各选项的含义为:


  - I 交互方式操作。如果mv操作将导致对已存在的目标文件的覆盖,此时系统询问是否重写,要求用户回答y或n,这样可以避免误覆盖文件。


  - f 禁止交互操作。在mv操作要覆盖某已有的目标文件时不给任何指示,指定此选项后,i选项将不再起作用。


  如果所给目标文件(不是目录)已存在,此时该文件的内容将被新文件覆盖。为防止用户在不经意的情况下用mv命令破坏另一个文件,建议用户在使用mv命令移动文件时,最好使用i选项。


  需要注意的是,mv与cp的结果不同。mv好象文件“搬家”,文件个数并末增加,而cp对文件进行复制,文件个数增加了。


  例1:将/usr/xu中的所有文件移到当前目录(用“.”表示)中:


  $ mv /usr/xu/ * .


  例2:将文件wch.txt重命名为wjz.doc
             $ mv wch.txt wjz.doc


  rm命令


  在linux中创建文件很容易,系统中随时会有文件变得过时且毫无用处。用户可以用rm命令将其删除。该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均删除。对于链接文件,只是删除了链接,原有文件均保持不变。


  rm命令的一般形式为:


  rm [选项] 文件…


  如果没有使用- r选项,则rm不会删除目录。


  该命令的各选项含义如下:


  - f 忽略不存在的文件,从不给出提示。


  - r 指示rm将参数中列出的全部目录和子目录均递归地删除。


  - i 进行交互式删除。


  使用rm命令要格外小心。因为一旦一个文件被删除,它是不能被恢复的。例如,用户在输入cp,mv或其他命令时,不小心误输入了rm命令,当用户按了回车键并认识到自己的错误时,已经太晚了,文件已经没有了。为了防止此种情况的发生,可以使用rm命令中的 i选项来确认要删除的每个文件。如果用户输入y,文件将被删除。如果输入任何其他东西,文件将被保留。在下一个例子中,用户要删除文件test和example。然后会被要求对每个文件进行确认。用户最终决定删除example文件,保留test文件。


  $ rm - ii te st example Remove test ?n


  Remove example ?y








df  可以查看一级文件夹大小、使用比例、档案系统及其挂入点,但对文件却无能为力
du  可以查看文件及文件夹的大小。
df -h    命令可以显示目前所有文件系统的可用空间及使用情形参数 -h 表示使用「Human-readable」          的输出,也就是在档案系统大小使用 GB、MB 等易读的格式。
du -h --max-depth=1 work/testing
du -h --max-depth=1 work/testing/*
      :查询文件或文件夹的磁盘使用空间如果当前目录下文件和文件夹很多,使用不带参数du的命           令,可以循环列出所有文件和文件夹所使用的空间。这对查看究竟是那个地方过大是不利的,            所以得指定深入目录的层数,参数:--max-depth=,这是个极为有用的参数!如下,注意使用         “*”,可以得到文件的使用空间大小
以下是代码片段:
[root@bsso yayu]# du -h --max-depth=1 work/testing
27M     work/testing/logs
35M     work/testing
[root@bsso yayu]# du -h --max-depth=1 work/testing/*
8.0K    work/testing/func.php
27M     work/testing/logs
8.1M    work/testing/nohup.out
8.0K    work/testing/testing_c.php
12K     work/testing/testing_func_reg.php
8.0K    work/testing/testing_get.php
8.0K    work/testing/testing_g.php
8.0K    work/testing/var.php
[root@bsso yayu]# du -h --max-depth=1 work/testing/logs/
27M     work/testing/logs/
[root@bsso yayu]# du -h --max-depth=1 work/testing/logs/*
24K     work/testing/logs/errdate.log_show.log
8.0K    work/testing/logs/pertime_show.log
27M     work/testing/logs/show.log   










 du 统计文件大小相加 
 df  统计数据块使用情况


    如果有一个进程在打开一个大文件的时候,这个大文件直接被rm 或者mv掉,则du会更新统计数值,df不会更新统计数值,还是认为空间没有释放。直到这个打开大文件的进程被Kill掉。


    如此一来在定期删除 /var/spool/clientmqueue下面的文件时,如果没有杀掉其进程,那么空间一直没有释放。


    使用下面的命令杀掉进程之后,系统恢复。
    fuser -u /var/spool/clientmqueue



查看文件绝对路径
which
where  文件名


原创粉丝点击