博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux常用命令(四)
阅读量:5814 次
发布时间:2019-06-18

本文共 4288 字,大约阅读时间需要 14 分钟。

Linux常用命令(四)

目前已经总结了,文件操作命令,目录操作命令,查看目录下的文件及目录结构,本节我来总结一下Linux另外两个重要的命令rm删除命令和find查找命令。

1 rm命令

rm命令是Linux系统中常用的命令,该命令的功能为删除一个目中的文件或多个文件或目录,对于链接文件,只是删除了链接,对原始文件没有影响,rm命令十分危险,新手要特别当心。

1.1 语法

rm [选项] 文件...

1.2 命令参数

-i 每个删除操作完成前都有确认提示-I 删除超过 3 个文件时或递归删除时仅提示一次确认-d 仅删除空目录-v 显示当前操作完成时的详细情况-f 强制删除,并没有提示-r 递归删除目录下的所有文件和目录

1.3 命令实例

  1. 删除目录,无参数时默认有提示

    [root@ERICSSON usr]# ls

    bin games lib libexec sbin src tmp
    etc include lib64 local share TestUsr
    [root@ERICSSON usr]# rm -r TestUsr/
    rm: remove directory ‘TestUsr/’? y
    [root@ERICSSON usr]#

2.强制删除,无任何提示

[root@ERICSSON /]#[root@ERICSSON /]# cd SherwinTest/[root@ERICSSON SherwinTest]# ls3file.txt  5file.txt  7file.txt  9file.txt  typescript4file.txt  6file.txt  8file.txt  Test[root@ERICSSON SherwinTest]# rm -f 3file.txt[root@ERICSSON SherwinTest]# ls4file.txt  6file.txt  8file.txt  Test5file.txt  7file.txt  9file.txt  typescript
  1. 运用I参数,删除超过三个以上或者递归删除时有提示

    [root@ERICSSON SherwinTest]#

    [root@ERICSSON SherwinTest]# ls
    4file.txt 6file.txt 8file.txt Test
    5file.txt 7file.txt 9file.txt typescript
    [root@ERICSSON SherwinTest]#
    [root@ERICSSON SherwinTest]# rm -I 4file.txt 5file.txt
    [root@ERICSSON SherwinTest]# ls
    6file.txt 7file.txt 8file.txt 9file.txt Test typescript
    [root@ERICSSON SherwinTest]# rm -I 6file.txt 7file.txt 8file.txt 9file.txt
    rm: remove 4 arguments? y
    [root@ERICSSON SherwinTest]# ls
    Test typescript
    [root@ERICSSON SherwinTest]#

  2. 递归删除目录下的所有文件和目录

    [root@ERICSSON /]# rm -r SherwinTest/

    rm: descend into directory ‘SherwinTest/’? y
    rm: remove regular empty file ‘SherwinTest/typescript’? y
    rm: remove directory ‘SherwinTest/Test’? y
    rm: remove regular empty file ‘SherwinTest/test1.log’? y
    rm: remove regular empty file ‘SherwinTest/test2.log’? y
    rm: remove regular empty file ‘SherwinTest/test3.log’? y
    rm: remove regular empty file ‘SherwinTest/test4.log’? y
    rm: remove regular empty file ‘SherwinTest/test5.log’? y
    rm: remove regular empty file ‘SherwinTest/test6.log’? y
    rm: remove regular empty file ‘SherwinTest/test7.log’? y
    rm: remove regular empty file ‘SherwinTest/test8.log’? y
    rm: remove regular empty file ‘SherwinTest/test9.log’? y
    rm: remove regular empty file ‘SherwinTest/test10.log’? y
    rm: remove directory ‘SherwinTest/’? y
    [root@ERICSSON /]#

    note:有提示

2 find命令

find命令是linux中最有用的命令之一。find命令用于:在一个目录(及子目录)中搜索文件,你可以指定一些匹配条件,如按文件名、文件类型、用户甚至是时间戳查找文件。

2.1 语法

find [pathname] -options [-print -exec -ok ...]

2.2 命令参数

-name 按照文件名查找文件-perm 按照文件的权限查找文件-user 按照文件属主来查找文件-grup 按照文件所属组来查找文件-mtime 按照文件的更改时间来查找文件, -n表示文件更改时间距现在n天以内,+n表示文件更改时间距现在n天以前-type  查找某一类型的文件,诸如:    b - 块设备文件。    d - 目录。     c - 字符设备文件。     p - 管道文件。           l - 符号链接文件。         f - 普通文件。

note:另外请注意下面三个的区别:

-amin n   查找系统中最后N分钟访问的文件-atime n  查找系统中最后n*24小时访问的文件-cmin n   查找系统中最后N分钟被改变文件状态的文件-ctime n  查找系统中最后n*24小时被改变文件状态的文件-mmin n   查找系统中最后N分钟被改变文件数据的文件-mtime n  查找系统中最后n*24小时被改变文件数据的文件

2.3 命令实例

  1. 查找在指定范围内修改过的文件

    1. 查找最后N分钟访问的文件[root@ERICSSON ~]# find . -atime -1../.bash_profile./.bashrc./.bash_history./.pki./.pki/nssdb./.viminfo[root@ERICSSON ~]#2. 查找系统N分钟被修改文件数据的文件[root@ERICSSON ~]# find . -mtime -1../.viminfo[root@ERICSSON ~]#note:其他参数大家可以自行进行验证。
  2. 根据文件名字查找

    [root@ERICSSON SherwinTest]# ls3file.txt  5file.txt  7file.txt  9file.txt  typescript4file.txt  6file.txt  8file.txt  Test[root@ERICSSON SherwinTest]# find -name "3file.txt"./3file.txt[root@ERICSSON SherwinTest]#
  3. 根据类型查找

    [root@ERICSSON SherwinTest]#[root@ERICSSON SherwinTest]# ls3file.txt  5file.txt  7file.txt  9file.txt  typescript4file.txt  6file.txt  8file.txt  Test[root@ERICSSON SherwinTest]# find . -type f -name "*file.txt"./4file.txt./5file.txt./6file.txt./7file.txt./8file.txt./9file.txt./3file.txt[root@ERICSSON SherwinTest]#note: find "." 这个点表示当前目录
  4. 按照目录和权限查找

    [root@ERICSSON test]# find /opt/soft/test/ -perm 777/opt/soft/test/log_link.log/opt/soft/test/test4/opt/soft/test/test5/test3/opt/soft/test/test3
  5. 查找当前所有目录并排序

    [root@ERICSSON SherwinTest]# ls3file.txt  5file.txt  7file.txt  9file.txt  typescript4file.txt  6file.txt  8file.txt  Test[root@ERICSSON SherwinTest]# find . -type f | sort./3file.txt./4file.txt./5file.txt./6file.txt./7file.txt./8file.txt./9file.txt./typescript[root@ERICSSON SherwinTest]#
  6. 按照文件大小查找

    [root@ERICSSON ~]# find . -size +1000c -print./anaconda-ks.cfg./.bash_history./.viminfo[root@ERICSSON ~]#note:查找当前目录大于1K的文件

转载于:https://blog.51cto.com/12002695/2380447

你可能感兴趣的文章
java只能的round,ceil,floor方法的使用
查看>>
由于无法创建应用程序域,因此未能执行请求。错误: 0x80070002 系统找不到指定的文件...
查看>>
新开的博客,为自己祝贺一下
查看>>
puppet任务计划
查看>>
【CQOI2011】放棋子
查看>>
采用JXL包进行EXCEL数据写入操作
查看>>
一周总结
查看>>
将txt文件转化为json进行操作
查看>>
线性表4 - 数据结构和算法09
查看>>
C语言数据类型char
查看>>
Online Patching--EBS R12.2最大的改进
查看>>
Binary Search Tree Iterator leetcode
查看>>
Oracle性能优化--DBMS_PROFILER
查看>>
uva-317-找规律
查看>>
Event事件的兼容性(转)
查看>>
我的2014-相对奢侈的生活
查看>>
zoj 2412 dfs 求连通分量的个数
查看>>
Java设计模式
查看>>
一文读懂 AOP | 你想要的最全面 AOP 方法探讨
查看>>
Spring Cloud 微服务分布式链路跟踪 Sleuth 与 Zipkin
查看>>