Linux find命令使用

    最近在工作中学习了不少Linux方面的命令,比如vim的使用命令、find命令、rpm打包spec配置文件等等。

鸟哥私房才基础版给了我不少帮助,在这里感谢鸟哥。

     遇到的其中一个问题是使用ubuntu12.04往公司的SVN上传一个目录,不过之前这个目录是从SVN下载下来的,更改了目录后需要删除原来的所有.svn目录。上网找了一下Linux下删除目录下所有.svn的方法,方法如下:

Linux下删除这些目录是很简单的,主要是使用了find工具,命令如下
find . -type d -name ".svn"|xargs rm -rf
或者
find . -type d -iname ".svn" -exec rm -rf {} \;

     感觉Linux下的subersion客户端速度蛮快的,5.8G的目录花10多分钟就能下载到本地,但是使用Windows版本的SVN下载则至少半个小时以上吧。

     有时可能需要在系统中查找具有某一特征的文件(例如文件权限、文件属主、文件长度、
文件类型等等)。这样做可能有很多原因。可能出于安全性的考虑,或是一般性的系统管理任
务,或许只是为了找出一个不知保存在什么地方的文件。F i n d是一个非常有效的工具,它可
以遍历当前目录甚至于整个文件系统来查找某些文件或目录。

    F i n d命令的一般形式为:
find pathname -options [-print -exec -ok]
让我们来看看该命令的参数:
pathname find命令所查找的目录路径。例如用.来表示当前目录,用/来表示系统根目录。
-print find命令将匹配的文件输出到标准输出。
-exec find命令对匹配的文件执行该参数所给出的s h e l l命令。相应命令的形式为' c o m m -
and' {} \;,注意{ }和\;之间的空格。
-ok 和- e x e c的作用相同,只不过以一种更为安全的模式来执行该参数所给出的s h e l l命令,
在执行每一个命令之前,都会给出提示,让用户来确定是否执行。

   可以在终端下使用man find来查询find命令的相关参数。

 

原文地址:https://www.cnblogs.com/ccf19881030/p/12004891.html