linux命令find

作者: huxt | 来源:发表于2019-06-28 12:59 被阅读0次

1.find

1.1).#find pass* 在当前目录下查找以 pass 开头的文件

1.2) #find /etc/pass*        在/etc 目录中查找以 pass 开头的文件

1.3) #find /etc/pass* -print  在/etc 目录中查找以 pass 开头的文件,并显示出来

1.4) #find /etc/ -name abc*  在/etc 目录中查找以 abc 开头的文件,并显示出来

1.5) #find ./ -name "*.txt"

1.6) 一天内更改的文件 :find /root/ -mtime -1

那么,找 “5天之内被更改过的档案名” 就是 find / -mtime -5 ,找“5天前的那一天被更改过的档案名” 就是   find / -mtime 5 ,找“5天之前被更改过的档案名” 就是   find / -mtime +5。我们可以看出有没有 “+,-”的差别

由这个时光轴我们可以知道,最右边为当前时,+5 代表大于等于 6 天前的档案名, -5 代表小于等于 5 天内的档案名,5 则是代表 5-6 那一天的档案名。

1.7)-exec 后面可以自定义shell命令

find . -name "*.back" -exec ls -l {} \;

find /opt/ -name "*txt" -exec tar -zcvf data.tar.gz {} \;

find /opt/ -name "*txt" -exec cp {} /root \;

find . -type f -mtime +14 -exec rm {} \;删除之前最好先ls -l 下(find . -type f -mtime +14 -exec ls -l {} \;)

find /etc -name “passwd*” -exec grep “root” {} \;

任何形式的命令都可以在-exec选项中使用。 在上面的例子中我们使用grep命令。find命令首先匹配所有文件名为“ passwd*”的文件,例如passwd、passwd.old、passwd.bak,然后执行grep命令看看在这些文件中是否存在一个root用户。

ind . -name “*.log” -exec mv {} .. \;

find . -name "*.back" -o -name "*.pdf"

-o 表示or

-a 表示and

1.8) xargs

1. 当你尝试用rm 删除太多的文件,你可能得到一个错误信息:/bin/rm Argument list too long. 用xargs 去避免这个问题

find ~ -name '*.log' -print0 | xargs -0 rm -f

2.获得/etc/ 下所有*.conf 结尾的文件列表,在这个例子中实用 xargs将find 命令的输出传递给ls -l
find /etc -name "*.conf" | xargs ls –l

3.假如你有一个文件包含了很多你希望下载的URL, 你能够使用xargs 下载所有链接

# cat url-list.txt | xargs wget –c

4. 查找所有的jpg 文件,并且压缩它

# find / -name *.jpg -type f -print | xargs tar -cvzf images.tar.gz

5. 拷贝所有的图片文件到一个外部的硬盘驱动

# ls *.jpg | xargs -n1 -i cp {} /external-hard-drive/directory

相关文章

  • Linux find命令查找文件

    Linux Find命令 Linux find命令用来在指定目录下查找文件。 学习参考地址:https://www...

  • Linux find and grep

    linux下的find文件查找命令与grep文件内容查找命令 linux下的find文件查找命令与grep文件内容...

  • find--linux

    Linux中find常见用法示例(转) find命令的参数; pathname: find命令所查找的目录路径。例...

  • 基础篇

    Linux学习 一、find命令 1、搜索文件的命令:which、whereis、locate、find a、wh...

  • linux 命令行整理2

    这次我们来看看Linux的查找文件的命令:find 命令格式: find 范围 匹配条件 比如:find /etc...

  • 2019-08-08Linux高阶命令与虚拟机上网的问题

    1.Linux命令 1.1find命令 在Linux文件系统中,用来查找一个文件放在哪。find /etc -n...

  • 碎碎念 b

    Linux中的搜索命令 文件搜索命令locate 命令搜索命令 忘记是啥了 find命令,其中find命令有好多后...

  • 每日总结-第十五天-linux

    linux find命令 题外:好像成了Linux命令汇总帖子hhh(菜哭)https://www.cnblogs...

  • Mac 常用操作

    一、常用命令 Linux的五个查找命令:find,locate,whereis,which,type 1、find...

  • Linux命令之文件管理 (十一)

    Linux find命令 Linux find命令用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查...

网友评论

    本文标题:linux命令find

    本文链接:https://www.haomeiwen.com/subject/ecsscctx.html