find命令总结
find命令
2018-2-27日整理完成
1,结合-exec的用法
查当前目录下的所有普通文件,并在 -exec 选项中使用ls -l命令将它们列出
# find . -type f -exec ls -l {} \;
-rw-r–r– 1 root root 34928 2003-02-25 ./conf/httpd.conf
-rw-r–r– 1 root root 12959 2003-02-25 ./conf/magic
-rw-r–r– 1 root root 180 2003-02-25 ./conf.d/README
在 /logs 目录中查找更改时间在5日以前的文件并删除它们:
$ find /logs -type f -mtime +5 -exec rm -f {} \;
查询当天修改过的文件
$ find . -mtime -1 -type f -exec ls -l {} \;
2,结合awk的用法:查询并交给awk去处理
who | awk ’{print $1"\t"$2}’
cnscn pts/0
df -k | awk ‘{print $1}’ | grep -v ’none’ | sed s"/\/dev\///g"
文件系统
sda2
sda1
3,多级查找
在/tmp中查找所有的*.h,并在这些文件中查找“SYSCALL_VECTOR",最后打印出所有包含"SYSCALL_VECTOR"的文件名
A) find /tmp -name "*.h" | xargs -n50 grep SYSCALL_VECTOR
B) grep SYSCALL_VECTOR /tmp/*.h | cut -d’:' -f1| uniq > filename
C) find /tmp -name "*.h" -exec grep "SYSCALL_VECTOR" {} \; -print
4,查找文件后删除
find / -name filename -exec rm -rf {} \;
5,查找磁盘中大于3M的文件显示出来:
find . -size +3000k -exec ls -ld {} ;
6,将find出来的东西拷到另一个地方
find /etc/ -type f -size -1M -exec cp {} /tmp \; (注意:单位M必须是大写的)
如果有特殊文件,可以用cpio,也可以用这样的语法:
find dir -name filename -print | cpio -pdv newdir
7,查找2004-11-30 16:36:37时更改过的文件
# A=`find ./ -name "*php"` | ls -l –full-time $A 2>/dev/null | grep "2004-11-30 16:36:37"
Linux-all, Linux | No Comments »
注意:之所以find . -name filename |rm -rf不通过,是因为rm命令不接受从标准输入传过来的指令
所以:只能是find . -name filename |xargs rm -rf
8,按名字查找
在当前目录及子目录中,查找大写字母开头的txt文件
[root@localhost ~]# find . -name '[A-Z]*.txt' -print (-print 是打印的意思,可省略,默认就具有 -print 的功能)
在/etc及其子目录中,查找host开头的文件
[root@localhost ~]# find /etc -name 'host*' -print
/etc/hosts
/etc/hosts.allow
/etc/host.conf
/etc/hosts.deny
在$HOME目录及其子目录中,查找所有文件
[root@localhost ~]# find ~ -name '*'
在当前目录及子目录中,查找不是out开头的txt文件
[root@localhost .code]# find . -name "out*" -prune -o -name "*.txt"
在当前目录及子目录中,查找属主具有读写执行,其他具有读执行权限的文件
[root@localhost ~]# find . -perm 755 -print
9,按类型查找
在当前目录及子目录下,查找符号链接文件 (-print可以省略)
find . -type l
find . -type f -user chen
10,按属主及属组
查找属主是www的文件
find / -type f -user www
查找属组mysql的文件
[root@localhost .code]# find / -type f -group mysql
11、按时间查找
查找2天内被更改过的文件
find . -type f -mtime -2
查找2天前被更改过的文件
find . -type f -mtime +2
查找一天内被访问的文件
find . -type f -atime -1
查找一天前被访问的文件
find . -atime +1 -type f
查找一天内状态被改变的文件
find . -ctime -1 -type f
查找一天前状态被改变的文件
find . -ctime +1 -type f
查找10分钟以前状态被改变的文件
find . -cmin +10 -type f
查找比aa.txt新的文件
find . -newer "aa.txt" -type f
查找比aa.txt旧的文件
find . ! -newer "aa.txt" -type f
查找比aa.txt新,比bb.txt旧的文件
find . -newer 'aa.txt' ! -newer 'bb.txt' -type f
查询大于1M的文件
find / -size +1M -type f
查找等于6字节的文件
find . -size 6c
查找小于32k的文件
find . -size -32k
执行命令
查找del.txt并删除,删除前提示确认
find . -name 'del.txt' -exec rm -f {} \;
查找aa.txt 并备份为aa.txt.bak
find . -name 'aa.txt' -exec cp {} {}.bak \;
查找aa.txt 归档压缩为aa.txt.tar.gz 并删除aa.txt
find . -name "aa.txt" -type f -exec tar -zcvf {}.tar.gz {} \; -exec rm -rf {} \; > /dev/null
find命令总结的更多相关文章
- Cmder--Windows下命令行利器
cmder cmder是一个增强型命令行工具,不仅可以使用windows下的所有命令,更爽的是可以使用linux的命令,shell命令. 安装包 安装包链接 下载后,直接解压即用. 修改命令提示符λ为 ...
- 【每日一linux命令4】常用参数:
下面所列的是常见的参数(选项)义: --help,-h 显示帮助信息 --version,-V ...
- .NET Core系列 : 1、.NET Core 环境搭建和命令行CLI入门
2016年6月27日.NET Core & ASP.NET Core 1.0在Redhat峰会上正式发布,社区里涌现了很多文章,我也计划写个系列文章,原因是.NET Core的入门门槛相当高, ...
- MVVM模式解析和在WPF中的实现(三)命令绑定
MVVM模式解析和在WPF中的实现(三) 命令绑定 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 MVVM模式解析和在WPF中 ...
- SQLServer执行命令出现“目录无效的提示”
异常处理汇总-数据库系列 http://www.cnblogs.com/dunitian/p/4522990.html 一般都是清理垃圾清理过头了,把不该删的目录删了 网上说法: 问题描述: 1.s ...
- SQLServer文件收缩-图形化+命令
汇总篇:http://www.cnblogs.com/dunitian/p/4822808.html#tsql 收缩前 图形化演示: 不仅仅可以收缩日记文件,数据库文件也是可以收缩的,只不过日记收缩比 ...
- 让 windows 下的命令行程序 cmd.exe 用起来更顺手
在 Windows 下使用 Larave 框架做开发,从 Composer 到 artisan 总是避免不了和 cmd.exe 打交道,系统默认的命令行界面却是不怎么好看,且每行显示的字符数是做了限制 ...
- [版本控制之道] Git 常用的命令总结(欢迎收藏备用)
坚持每天学习,坚持每天复习,技术永远学不完,自己永远要前进 总结日常开发生产中常用的Git版本控制命令 ------------------------------main-------------- ...
- git 命令
切换仓库地址: git remote set-url origin xxx.git切换分支:git checkout name撤销修改:git checkout -- file删除文件:git rm ...
- svn 常用命令总结
svn 命令篇 svn pget svn:ignore // 查看忽略项 svn commit -m "提交说明" // 提交修改 svn up(update) // 获取最新版本 ...
随机推荐
- LOJ6000 - 「网络流 24 题」搭配飞行员
原题链接 题意简述 求二分图的最大匹配. 题解 这里写的是匈牙利算法. 表示节点的当前匹配. 为真表示在这一轮匹配中,无法给节点一个新的匹配.所以如果为真就不用再dfs它了,直接continue就好. ...
- javascript垃圾收集与性能问题
一.垃圾收集 JavaScript具有自动垃圾收集功能,也就是说,执行环境会负责管理代码所占用的内存. 不同于C和类C语言,这些语言都需要手动监听内存的使用情况.JavaScript实现了自动管理内存 ...
- 网络基础Cisco路由交换二
三层交换技术 作用: 使用三层交换技术实现VLAN间通信. 三层交换=二层交换+三层转发 基于CEF的快速转发 主要包含两个转发用的信息表: 转发信息库(FIB):FIB类似于路由表,包含路由表中转发 ...
- javascript DOM document对象
document对象代表整个html文档 用来访问页面所有元素最复杂的一个dom对象 也是window对象的一个子对象. 对于dom编程中,一个html就会当成一个dom树dom会把所有的html元素 ...
- R语言︱函数使用技巧(循环、if族/for、switch、repeat、ifelse、stopifnot)
每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- 后续加更内容: 应用一:if族有哪些成员呢?- ...
- 图像处理------Fuzzy C Means的聚合算法
Fuzzy C-Means聚合算法在图像分割(segmentation)和图像视觉处理中常常被用到聚合算法之 一本文是完全基于JAVA语言实现Fuzzy C-Means聚合算法,并可以运用到图像处理中 ...
- MongoDB集群之分片
原文:点击打开链接 MongoDB分片 分片(sharding)是将数据拆分,将其分散在不同的机器上的过程.MongoDB支持自动分片 片键(shard key)设置分片时,需要从集合里面选一个键,用 ...
- 芝麻HTTP: Scrapy小技巧-MySQL存储
这两天上班接手,别人留下来的爬虫发现一个很好玩的 SQL脚本拼接. 只要你的Scrapy Field字段名字和 数据库字段的名字 一样.那么恭喜你你就可以拷贝这段SQL拼接脚本.进行MySQL入库处理 ...
- C# IEnumerable 和 IEnumerator接口浅析
温故而知新,可以为师矣,有空经常复习一下基础知识是有必要的,并且能加深理解和记忆. Foreach常用于循环访问集合,对实现IEnumerable的接口的容器进行遍历,IEnumerable和IEnu ...
- linux和windows通用的路径
String path=request.getSession().getServletContext().getRealPath("/")+"js" + Sys ...