Linux命令(壳)从一开始的学习笔记2使用find和xargs的掌握
1,利用找到的,你可以找到的文件或目录,满足一定的特征(如许可、大师、长度、类型、名称等),并结合必要的,好的和xargs做更多的工作。
对于2.find名称选项:
根据文件的名称进行搜索,例如在自己的根目录中找到符合txt文件的文件。
扩展:查找!名称myshell打印
(
正如您从上面看到的,对于root用户:
~
为家
/根
代表是相同的目录,也就是。
特别是,用户XXX,家~美元~ ~代表 / XXX目录,该目录的位置(与ZHY用户为例),如下:
你可以看到, / /家ZHY是非管理员用户下, / /家XXX目录下,和 /根使用者的目录位置如下:
它直接在根目录中(当然,管理员是老板)。
)
在当前目录中查找,使用Ldquo;
#找到名称×.txt打印。
此命令查找符合条件的当前目录和子目录下的文件。
在当前目录中的大写字母的开头处找到该文件。
#找到名称{ A-Z } *打印。
注意后面有一个*。
在以开头的文件中查找:
#找到等名字的主持人打印
在家里查找所有文件:
#找到~名称*打印
或
#找到~打印
如果要在高负载下运行该系统,请从根目录中找到它:
#找到 /名称*打印(找到# /打印)
对这个命令稍加修改:
#找到 /名称*打印
它可以在后台运行,这一次,通过Ctrl + C,它不能中断它的执行。
查找文件以两个小写字母开头,后面跟着一个两个数字的txt文件,可以使用:
#找到 /名称{ } { } { a-z A-Z 0-9 } { 0-9 }。txt打印
三.查找烫发选项:
根据文件权限查找文件。
查找文件属于所有者可以读取、写入、执行和其他用户可以读取和执行的文件。
#找到烫发755打印。
如:
扩展:查找。-烫发755 -打印
4。查找修剪选项:
当查找文件时,忽略目录,如:
如果你想在应用程序目录中找到一个文件,你不想在这个目录中找到它,你可以使用它:
#找到 /应用程序名称 /应用/ bin -修剪- O -打印
5。user和nouser选项:
用户:基于文件的主查找文件:
找到用户打印# ZHY。
在Linux下,可能有一些所有者可能被管理员删除。在这个时候,你可以使用- nouser选项来查找文件,业主没有有效账户 / etc / passwd文件。使用nouser时,你不必给一个用户名。
#找到 / nouser打印
6。使用组和nogroup:
与用户和nouser,集团和nogroup选项可以找到属于一个用户组的文件,并且用户组不存在的文件。
#找到 /组ZHY打印
#找到 / nogroup打印
7。使用-时间选择:
此选项可以找到在指定时间或指定时间内修改的文件。如果系统突然没有可用空间,那么很有可能在那段时间内文件的长度会迅速增加。然后我们可以使用时间选项,找到这样的文件。
- 1表示已在1天(24小时)内更改的文件。
+ 2表示已在2天(48小时)内更改的文件。
8。新的选择:
新的命令允许我们找到一个在两个文件之间改变的文件,例如下面的两个文件,它们改变了大约两天的时差:
通过以下命令,我们可以找到更改两个时间之间的文件。
#找到 / -新-新age.awk belts.awk -exec ls -l!{ ;
从上面可以看出,这种比较必须有参考文献。例如,如果我们想找到在两小时内改变的文件,我们必须有一个在两小时前完全改变的文件:
如果这一12月26日,你需要创建一个文件,在08点和41点的变化,在12月26日。
#触摸T 12260841覆盖旧的文件
然后通过:
#找到 / -新的覆盖旧的文件打印
查找在两小时内更改时间的文件。
9。查找指定类型的文件类型:
在根目录中,查找所有目录:
#找到 / D型打印
查找除目录之外的所有类型的文件:
#找到 / D型打印!
查找所有符号链接文件:
#找到 / L型-打印
查找所有普通文件:
#找到 / F型打印
10。使用大小选项:
使用一个文件,可以找到指定的长度,你可以使用一个字节为单位,一块为单位,一个1块= 512字节(0.5m)。
在字节中,您需要在数字之后添加C,例如:
在根目录中,查找文件长度大于1M的文件。
#找到 /尺寸+ 1000000c打印
块表示是:
#找到 /尺寸+ 2 -打印
找到一个只有100字节的文件:
#找到 /大小的100c打印
查找小于100字节的文件:
#找到 / -尺寸- 10 -打印
11。使用深度选项:
在搜索时,使用深度命令搜索指定文件的根目录中的所有文件,然后在子目录中查找,有时备份可能需要这样做。
例如:从根目录开始,找到一个名为文件的文件
#找到 /名称欺诈。文件深度打印
12。使用挂载选项:
在查找文件时,只能在指定的列表下查找,而不是进入子目录,子目录可以通过挂载指定。
如:
#找到名称*。XC -安装-打印。
13。使用cpio选项:
cpio选项可以用来备份或恢复磁带设备文件,找到,你可以查看文件的整个文件系统,然后备份用cpio命令录音。
以下命令:
# /光盘
找到应用程序等家深度打印# | cpio - ivcdc65535 啊
/ dev / rmt0
它是用来告诉shell命令尚未完成的系统,请忽略返回回来。这个命令是用于备份的文件 / /家庭等,和 /应用程序目录的设备/ dev / rmt0。
在上面的命令,等等,家庭和应用程序不存在之前。这是因为使用了相对路径。
当恢复这些文件从磁带,你可以选择要恢复的文件的路径。例如,可以将这些文件恢复到另一个目录,和一些操作完成后,就可以恢复到原来的目录的绝对路径,如果使用备份时使用,如 /等,那么就只能恢复到 /etc目录时恢复,并没有其他的选择。
上面的命令告诉find命令输入 / etc目录第一,那么 /家/应用程序目录,这些目录下的文件的第一场比赛,然后在其子目录的文件匹配,所有这些结果将通过cpio命令备份。
顺便说一下,在上面的例子中,cpio命令使用c65536选项。我可以使用B选项,但每个块的大小是512字节,当c65536选项时,块的大小为64K字节(65536 / 1024)。
14。使用执行或确定选项:
在将多个文件与find匹配后,可以使用执行和确定选项来完成某些操作。
使用执行和OK格式是:执行(OK),接着是执行命令的选项,然后是一对{、空格和,最后是分号。
如:
找到-type f -exec #。ls;
此命令查找并列出匹配的文件。
发现日志型F时间# + 5 -exec rm {} ;
该命令查找5天前更改时间并删除它们的普通文件。
执行安全模式:好吗
#找到。名称*。日志170- 5 -好的rm {} ;
此命令与执行程序之间的唯一区别是命令在删除时会发出提示。
#找到 /等名称passwd *-exec grepZHY{ } ;
指挥的第一场比赛,被称为密码*所有文件,如口令、pssswd.old和passwd.bak,然后执行grep命令看看这些命令有ZHY用户。
查找的其他示例:
#找到~打印(美元家庭打印)
查找所有文件
#找到型F烫打印4755。
找到特定的位置,该文件属主的读、写、执行权限,其他用户有读和执行文件。
#找到 /组ZHY打印
发现业主ZHY文件。
- name'admin日志{ } { 0-9 0-9。} { }# 0-9影评:$ find /日志+ 7 -exec rm {} ;
找到一个有指定名称的文件,修改日期7天前,并删除它。
#找到 / dev /可打印
在系统中找到的所有RMT磁带设备。
15。使用xargs选项:
为什么使用xargs:
当匹配的文件处理的E X E C选项使用F I N D F I N D命令,命令将所有匹配的文件执行。不幸的是,有些系统上,可以通过E X E C指令长度的限制,使溢出错误后几分钟后,F I N D命令运行发生。错误信息通常是参数列太长或参数列溢出这是X个RG的命令的使用,特别是与F I N D命令。F I N D命令传输匹配的文件到X的RG的命令,而X RG RG命令只获取文件的一部分时,而不是所有的人,不像那些X和T选项。T他允许处理该文件的第一部分,然后下一步,然后继续。在某些系统中,E X E C选项为每个匹配的文件的使用和启动相应的程序,将不匹配的所有文件作为一个参数;在某些情况下会有太许多过程中,系统的退化,所以效率不高,使用xargs命令;只有一个过程。此外,当使用X RG的命令,它是否能得到所有参数一次,或有批量参数、数量和各采集参数根据命令选项,在系统内核中相应的可调参数的确定。
例:
#找到 / -type f -打印xargs文件通/根/壳/ xargs.log | |
找到系统中的每一个普通文件,然后使用X RG的命令来测试哪些文件属于他们,并导入到xargs.log输出文件,它是必要的:
#找到 / -type f -打印-执行文件通/根/壳/ exec.log | {} ;
通过比较xargs.log和exec.log,发现两输出是完全相同的,但xargs命令执行效率比他快得多的多。
#找到软件 /审计烫发777打印xargs chmod水包油|
查找所有用户的文件,这些文件中有读取、写入和执行权限,并返回其他用户的写入权限。
#找到 / -type f -打印xargs grep装置|
使用grep命令来搜索所有普通文件的分词器:
该类型的名字找到#。F -打印xargs grep 192.168.5.29|
这个命令搜索单词192.168.5.29在所有常见的文件在当前目录中,它是用来取消find命令外壳的特殊意义。