≡菜单

妈妈,我找到了!—15个实用的Linux Find命令示例

和妈妈一起在沙滩上找东西。
照片由 科尔·乔乔

除了在目录结构下查找文件的基本操作之外,您还可以使用find命令执行一些实际操作,这将使您的命令行操作变得容易。

In this article, let us review 15 practical examples of Linux 找 command that will be very useful to both newbies and experts.


First, create the following sample empty files under your home directory to try some of the 找 command examples mentioned below.

#vim create_sample_files.sh
touch MybashProgram.sh
touch mycprogram.c
touch MyCProgram.c
touch Program.c

mkdir backup
cd backup

touch MybashProgram.sh
touch mycprogram.c
touch MyCProgram.c
touch Program.c

#chmod + x create_sample_files.sh

#./create_sample_files.sh

# ls -R
.:
backup                  MybashProgram.sh  MyCProgram.c
create_sample_files.sh  mycprogram.c      Program.c

./backup:
MybashProgram.sh  mycprogram.c  MyCProgram.c  Program.c

1.使用名称查找文件

This is a basic usage of the 找 command. This example 找s all files with name —当前目录及其所有子目录中的MyCProgram.c。

# 查找-名称"MyCProgram.c"
./backup/MyCProgram.c
./MyCProgram.c

2.使用名称查找文件并忽略大小写

This is a basic usage of the 找 command. This example 找s all files with name —当前目录及其所有子目录中的MyCProgram.c(忽略大小写)。

# 找 -iname "MyCProgram.c"
./mycprogram.c
./backup/mycprogram.c
./backup/MyCProgram.c
./MyCProgram.c

3.使用mindepth和maxdepth将搜索限制到特定目录级别

从根目录开始,在所有子目录下找到passwd文件。

# 找 / -name passwd
./usr/share/doc/nss_ldap-253/pam.d/passwd
./usr/bin/passwd
./etc/pam.d/passwd
./etc/passwd


在根目录下一级找到passwd文件。 (即root—1级和一个子目录— level 2)

# 找 -maxdepth 2 -name passwd
./etc/passwd


在根目录下两个级别下找到passwd文件。 (即root—1级和两个子目录— level 2 and 3 )

# 找 / -maxdepth 3 -name passwd
./usr/bin/passwd
./etc/pam.d/passwd
./etc/passwd


在子目录级别2和4之间找到密码文件。

# 找 -mindepth 3 -maxdepth 5 -name passwd
./usr/bin/passwd
./etc/pam.d/passwd

4.在“查找”命令找到的文件上执行命令。

In the example below, the 找 command calculates the md5sum of all the files with the name MyCProgram.c (ignoring case). {} is replaced 通过 the current file name.

# 找 -iname "MyCProgram.c" -exec md5sum {} \;
d41d8cd98f00b204e9800998ecf8427e  ./mycprogram.c
d41d8cd98f00b204e9800998ecf8427e  ./backup/mycprogram.c
d41d8cd98f00b204e9800998ecf8427e  ./backup/MyCProgram.c
d41d8cd98f00b204e9800998ecf8427e  ./MyCProgram.c

5.反转比赛。

显示名称不是MyCProgram.c的文件或目录。由于maxdepth为1,因此只能在当前目录下查看。

# 找 -maxdepth 1 -not -iname "MyCProgram.c"
.
./MybashProgram.sh
./create_sample_files.sh
./backup
./Program.c

6.按索引节点号查找文件。

每个文件都有一个唯一的索引节点号,使用它我们可以识别该文件。创建两个名称相似的文件。即一个文件,文件末尾有空格。

# touch "test-file-name"

# touch "test-file-name "
[Note: There is a space at the end]

# ls -1 test*
test-file-name
test-file-name


从ls输出中,您无法确定哪个文件的末尾有空格。使用选项-i,您可以查看文件的inode编号,这对于这两个文件而言是不同的。

# ls -i1 test*
16187429 test-file-name
16187430 test-file-name


You can specify inode number 上 a 找 command as shown below. In this example, 找 command renames a file using the inode number.

# 找 -inum 16187430 -exec mv {} 新测试文件名 \;

# ls -i1 *test*
16187430 新测试文件名
16187429 test-file-name


当您要对名称不正确的文件进行某些操作时,可以使用此技术,如以下示例所示。例如,文件名为—file..txt中有一个特殊字符。如果您尝试执行“rm 文件?.txt”,以下三个文件将全部删除。因此,请按照以下步骤删除仅“file?.txt” file.

# ls
file1.txt  file2.txt  文件?.txt


查找每个文件的索引节点号。

# ls -i1
804178 file1.txt
804179 file2.txt
804180 文件?.txt


使用索引节点号删除其中包含特殊字符的文件,如下所示。

# 找 -inum 804180 -exec rm {} \;

# ls
file1.txt  file2.txt
[Note: The file with name "文件?.txt" is now removed]

7.根据文件权限查找文件

可以进行以下操作。

  • 查找与完全许可匹配的文件
  • 检查给定的权限是否匹配,与其他权限位无关
  • 通过给出八进制/符号表示进行搜索


对于此示例,让我们假设目录包含以下文件。请注意,这些文件的文件权限不同。

# ls -l
total 0
-rwxrwxrwx 1 root root 0 2009-02-19 20:31 all_for_all
-rw-r--r-- 1 root root 0 2009-02-19 20:30 everybody_read
---------- 1 root root 0 2009-02-19 20:31 no_for_all
-rw------- 1 root root 0 2009-02-19 20:29 要么dinary_file
-rw-r----- 1 root root 0 2009-02-19 20:27 others_can_also_read
----r----- 1 root root 0 2009-02-19 20:27 others_can_only_read


查找具有读取权限的文件进行分组。使用以下命令在您的主目录中查找世界可以读取的所有文件,而与该文件的其他权限无关。

# 找 . -perm -g=r -type f -exec ls -l {} \;
-rw-r--r-- 1 root root 0 2009-02-19 20:30 ./everybody_read
-rwxrwxrwx 1 root root 0 2009-02-19 20:31 ./all_for_all
----r----- 1 root root 0 2009-02-19 20:27 ./others_can_only_read
-rw-r----- 1 root root 0 2009-02-19 20:27 ./others_can_also_read


查找仅具有读取权限才能分组的文件。

# 找 . -perm g=r -type f -exec ls -l {} \;
----r----- 1 root root 0 2009-02-19 20:27 ./others_can_only_read


查找仅具有读取权限的文件才能分组[按八进制搜索]

# 找 . -perm 040 -type f -exec ls -l {} \;
----r----- 1 root root 0 2009-02-19 20:27 ./others_can_only_read

8.在主目录及其子目录中找到所有空文件(零字节文件)

以下命令输出的大多数文件将是其他应用程序创建的锁定文件和占位符。

# 找 ~ -empty


仅列出主目录中的所有空文件。

# 找 . -maxdepth 1 -empty


仅列出当前目录中的非隐藏空文件。

# 找 . -maxdepth 1 -empty -not -name ".*"

9.查找前5个大文件

以下命令将显示当前目录及其子目录中的前5大文件。根据命令必须处理的文件总数,这可能需要一段时间才能执行。

# 找 . -type f -exec ls -s {} \; | sort -n -r | head -5

10.查找前5个小文件

Technique is same as 找ing the bigger files, but the 上ly difference the sort is ascending 要么der.

# 找 . -type f -exec ls -s {} \; | sort -n  | head -5


在上面的命令中,您很可能只会看到零字节文件(空文件)。因此,您可以使用以下命令列出除ZERO字节文件以外的较小文件。

# 找 . -not -empty -type f -exec ls -s {} \; | sort -n  | head -5

11.使用选项-type根据文件类型查找文件

仅查找套接字文件。

# 找 . -type s


查找所有目录

# 找 . -type d


仅查找普通文件

# 找 . -type f


查找所有隐藏的文件

# 找 . -type f -name ".*"


查找所有隐藏的目录

# 找 -type d -name ".*"

12.通过与其他文件的修改时间进行比较来查找文件。

Show files which are modified after the specified file. The following 找 command displays all the files that are created/modified after 要么dinary_file.

# ls -lrt
total 0
-rw-r----- 1 root root 0 2009-02-19 20:27 others_can_also_read
----r----- 1 root root 0 2009-02-19 20:27 others_can_only_read
-rw------- 1 root root 0 2009-02-19 20:29 要么dinary_file
-rw-r--r-- 1 root root 0 2009-02-19 20:30 everybody_read
-rwxrwxrwx 1 root root 0 2009-02-19 20:31 all_for_all
---------- 1 root root 0 2009-02-19 20:31 no_for_all

# 找 -newer 要么dinary_file
.
./everybody_read
./all_for_all
./no_for_all

13.按大小查找文件

Using the -size option you can 找 files 通过 size.

查找大于给定大小的文件

# 找 ~ -size +100M


查找小于给定大小的文件

# 找 ~ -size -100M


查找与给定大小完全匹配的文件

# 找 ~ -size 100M


注意:–表示小于给定大小,+表示大于给定大小,没有符号表示精确给定大小。

14.为常用查找操作创建别名

If you 找 some thing as pretty useful, then you can make it as an alias. And execute it whenever you want.


经常删除名称为a.out的文件。

# alias rmao="找 . -iname a.out -exec rm {} \;"
# rmao


删除c程序生成的核心文件。

#别名rmc ="找 . -iname core -exec rm {} \;"
# rmc

15. Remove big archive files using 找 command

以下命令将删除超过100M的* .zip文件。

# 找 / -type f -name *.zip -size +100M -exec rm -i {} \;"

使用别名rm100m删除所有超过100M的* .tar文件(删除100M)。使用类似的概念并创建rm1g,rm2g,rm5g之类的别名,以分别删除大于1G,2G和5G的文件大小。

# alias rm100m="找 / -type f -name *.tar -size +100M -exec rm -i {} \;"
# alias rm1g="找 / -type f -name *.tar -size +1G -exec rm -i {} \;"
# alias rm2g="找 / -type f -name *.tar -size +2G -exec rm -i {} \;"
# alias rm5g="找 / -type f -name *.tar -size +5G -exec rm -i {} \;"

# rm100m
# rm1g
# rm2g
# rm5g

查找命令示例第二部分

If you liked this Mommy article 上 找 command, 做n’t forget to check-out the Daddy article of the 找 command — 爸爸,我找到了!,15个很棒的Linux查找命令示例(第2部分)

很棒的Linux文章

以下是一些很棒的 15个例子 articles that you might 找 救命ful.

如果您喜欢这篇文章,您可能还会喜欢..

  1. 50个Linux Sysadmin教程
  2. 50个最常用的Linux命令(包括示例)
  3. 排名前25位的最佳Linux性能监视和调试工具
  4. 妈妈,我找到了!–15个实用的Linux Find命令示例
  5. Linux 101 Hacks第二版电子书 Linux 101黑客手册

Bash 101 Hacks书 Sed和Awk 101黑客手册 Nagios Core 3书 Vim 101黑客手册

{ 58 评论… 加一 }

  • 马蒂亚斯 2009年3月4日,下午12:12

    Really nice overview, thanks. As an addition a very handy combination of 找 and grep I use almost every day: 找 a string inside a filename.

    找 . -type f -exec grep -qi “foo” {} \; -print

  • ejjp 2009年3月4日,下午12:12

    你好,

    很好的例子!有些人对我不了解。

    could you explain some examples to 找 files 通过 date range (creation, modification,..etc)?

  • 提姆 2009年3月4日,下午2:24

    你好,

    很长时间以来,我一直想真正知道如何使用此命令。现在我知道了,谢谢。

  • 我自己 2009年3月4日,晚上7:25

    you can use 找 for setting permissions
    这对于服务器端脚本很有用,例如:

    找 /var/www/ -name “*.php*”-exec chmod 644 {} \; #将/ var / www /中的所有php php4 php5 ..文件的权限更改为644(user:rw group:r other:r)

    还请注意,-exec事情可以通过管道传递给xargs来完成:
    查找-名称“*~”| xargs rm#等效于rm -r“*~” ; 和this removes all files ending with ~ as a last chacter, under the present folder. Usually files ending with ~ are temporary files created 通过 text editors such as kate.
    要么
    查找-名称“*~”| xargs -i echo文件{}可能没用; #using -i选项使您可以知道xargs通过stdin接收的参数将在xargs给出的命令中执行。

  • 找 command user 2009年3月5日,上午3:45

    找 . -type f -print | xargs grep -ni “mystring”

  • Thanh Dat 2009年3月5日,上午6:44

    非常好的帖子,谢谢!
    可以在Unix Power Tools(Oreilly)中找到更多详细信息,其中包含许多其他超酷工具^^

  • 阿列什·弗里德尔 2009年3月5日,上午8:11

    只是小纸条–有一种使用通配符删除文件的更直接的方法。只是

    rm “test?.txt”

  • 阿列什·弗里德尔 2009年3月5日,上午8:22

    马蒂亚斯:

    区分是很有用的

    找 . -type f -iname “*foo*”

    您可以在其中使用带通配符的模式,而不是更复杂但更强大的模式

    找 . -type f -exec grep -qi “…regexp…” {} \; -print

    由于人们通常不需要正则表达式,因此第一个更容易记住和输入。

  • 埃里克·温德林 2009年3月5日,下午3:05

    You can also 找 files changed in the last day:
    找 . -ctime -1 -type f

    也,“找 。 -print0 | xargs -0 cmd”比仅使用xargs更安全。

  • 巴拉 2009年3月7日,下午1:48

    我一直在寻找类似的东西。

  • 米特 2009年3月9日,上午7:42

    优秀的工作伙伴!谢谢。

  • 迈克·J。 2009年3月12日,上午11:40

    很棒的帖子。与-exec结合使用的Find是功能最强大且最有用的实用程序之一。
    回复:#5反转匹配-至少在某些口味上可以使用\!作为-not -iname的快捷方式…

    # 找 -not -iname “MyCProgram.c”
    # 找 1 \! “MyCProgram.c”

  • 迈克·J。 2009年3月12日,下午5:58

    抱歉,我之前的评论示例正确。
    它应该读…
    # 找 \! -iname “MyCProgram.c”
    # 找 -not -iname “MyCProgram.c”

  • 守护进程 2009年3月24日,上午3:03

    Gr8,谢谢。

    How to 找 files that are newly created 5 要么 10 minutes before ?

  • 哈里 2009年4月7日,上午6:39

    We can 找 the latest access/changed files using following command,
    $ 找 -cmin

  • 彼得 2009年5月12日,上午2:19

    I’m使用macosx tiger,如果我使用命令,例如:
    找 -iname “MyCProgram.c”
    然后:
    找: illegal option — i
    找: illegal option — n
    找: illegal option — a
    找: illegal option — m
    找: illegal option — e

    为什么?

  • 极速赛车手 2009年5月12日,上午6:13

    @彼得

    试试这个:

    找 . -iname “MyCProgram.c”

  • 詹姆士 2009年5月12日,下午4:32

    @彼得:安装Ubuntu,然后重试。 --

  • 麦克风 2009年5月13日,上午3:34

    #别名rmc =”找 。 -iname核心-exec rm {} \;”
    #rmc

    找 has a -delete option so that the upper can simply look like:

    #别名rmc =”找 。 -iname核心-删除”
    #rmc

  • 彼得 2009年5月24日,上午2:56

    您还可以使用以下方法提高速度:

    找 … -exec cmd ‘{}’ +

    (注意:这也是使用xargs -0的替代方法)

  • bas 2009年5月25日,下午6:22

    彼得的后期评论,他应该在.profile或.bashrc中安装一个别名,如下所示:
    alias 找=/sw/bin/find
    because there is another 找 command which are preceding the right 上e in the default path string.

  • 科马尔 2009年7月6日,上午5:43

    When I am 做ing 找 -inum , I am not getting any output for some files inode numbers.Why this is happening?

  • 拉梅什·纳塔拉詹(Ramesh Natarajan) 2009年7月8日,下午11:01

    @ 提姆,@ 巴拉,@ 米特, 谢谢你的评论。一世’m very glad that you found this article 救命ful.

    @ ejjp,@ 守护进程, To 找 files based 上 date, refer to our 查找命令示例(第2部分) 文章。

    @ 马蒂亚斯,@ 我自己,@ 找命令用户,@AlešFriedl,@ 埃里克·温德林,@ 麦克风 J,@ 哈里,@ 麦克风,@ 彼得,@ bas,@ Geoff, 谢谢 for sharing your awesome examples 上 找 command. I appreciate it.

    @Thanh Dat, 是。我同意。 Unix电动工具,第三版 是一本非常出色的书,上面有许多实际例子。

    @Speed Racer,@ 詹姆士, 谢谢 for 救命ing out 彼得. 🙂

    @Komal, Can you give us an example of exactly what command you tried and what was your output? Did you give the correct inode number in the 找 command?

  • 加布里埃尔 2009年7月23日,上午1:52

    感谢Ramesh提供的有用示例,尤其是删除大文件的命令。

  • 拉梅什·纳塔拉詹(Ramesh Natarajan) 2009年7月25日,上午12:25

    @Gabriel,

    感谢您的评论。一世’m very glad that you found this article 救命ful in removing the big files 上 your linux system.

  • 陈丹 2010年3月31日,晚上11:34

    你好

    I am unable to 找 out the boot error which had occured some where in last week while rebooting the server.

    Can someone 救命 me out 找ing that error.

    谢谢

  • 拉吉 2010年8月27日,上午1:08

    Really it is 救命ing me a lot,…

  • 查尔斯 2010年10月25日,上午4:57


    找 has an inbuilt -ls option , which greatly reduces the fork time incured when we use -exec ls . you may use
    找 /opt -type f -size +10000000c -ls | sort -nk 7 | tail

  • 2011年1月8日,下午1:48

    I know # is for using 评论 in Linux, so 我不’无法理解您在诸如以下这些行中对它的使用:
    #vim create_sample_files.sh
    #chmod + x create_sample_files.sh
    #./create_sample_files.sh
    我应该添加“#”?这些评论是不是应该’t I type ’em at all?
    正如您所写的那样,由于本教程也适用于新手,请您解释一下吗?
    谢谢 -

  • 文卡特(Venkat Subramanian) 2011年1月20日,下午7:30

    嘿拉梅什! You Rock man ..我喜欢这个网站,还提供免费书籍。.感谢您所做的所有工作!我为你感到骄傲!! --

  • 洛克希·格罗弗 2011年3月22日,上午11:06

    我是iacm的学生,负责硬件网络。我获得了有关Linux和网络的额外知识。

  • 查姆 2011年5月3日,上午11:48

    嗨Ramesh,
    I like these commands and examples. Really of a 救命 even for an experienced software developer who 做es not have hands 上 shell scripting. Keep up the servi

  • 离子 2011年5月16日,下午3:32

    I’我一直试图找出如何“find”一组文件,带有*包含*和排除*名称过滤器,然后对结果执行命令–从概念上讲,类似:

    找 . -iname “*.txt” -exec grep -v 斑点 ; cp {} MyDir \;

    当然,这是坏的,但应该表明我’我想做的是
    找 all “*.txt”文件拒绝任何“*blob*”; 和copy the rest to the MyDir directory.

    有人知道怎么做吗?

  • 2011年7月9日,晚上10:22

    你好,

    step 1, 找 all .txt files in the current directory and all of its subdirectories
    $ 找 . -type f -name “*.txt”
    step 2, pipe the result to grep, 找 those files containing ‘blob’
    $ 找 . -type f -name “*.txt” | grep ‘blob’
    第3步,添加‘-v’ (invert-match), 找 those files not containing ‘blob’
    $ 找 . -type f -name “*.txt” | grep -v ‘blob’
    步骤4,将文件列表传递给xargs,xargs将列表分成子列表并处理每个子列表,请注意这里我们必须使用‘–target-directory’阐明我们的意图。
    $ 找 . -type f -name “*.txt” | grep -v ‘blob’| xargs cp –target-directory = newDir

    now you got all the files you want in the newDir. Mission completed! hope this 救命s.

    注意‘–target-directory’上面有2个连字符号,而不是破折号,这个网站很难识别。您’我会在说什么,如果你‘cp –help’.

  • 舒巴姆 2011年7月13日,上午3:24

    精彩!!

  • 罗伯特·罗伊 2011年10月13日,上午3:21

    很棒的cmds和例子。十分感谢。需要更多……

  • 淡淡的 2011年11月13日,上午3:39

    谁能告诉我
    指某东西的用途“prune” in linux.
    请举例说明。

    非常感谢

  • 罗伯托 2012年1月27日,上午4:06

    你好拉梅什!非常感谢所有这些有用的信息。我目前正在准备参加LPI-C 1考试,并且在查找有关find命令的更多信息时,我找到了这个网站。但是,我还没有回答一个最初的问题,{} \是什么?对于?
    {}替换为当前文件名。(我知道了)
    然后在那边加上反斜杠和分号。我猜想这与外壳环境有关。您或本网站的其他组织有没有机会进一步解释一下?
    亲切的问候

  • 2012年1月31日,上午9:50

    我只是在thegeekstuff.com上看到了几篇文章,这是其中之一。我只能说,通过这样的写作,我们希望“normal people” will learn Linux. I’我已经从事该行业7年了(编程程度等),这是最好的一些,如果不是最好的话,这也是写得最好的Linux quickref 做coI。’已经看到。普通怪胎(像我一样,而不是命令行迷)’不要阅读手册页,因为它们’像科学记数法一样写,几乎没有任何例子。如果它们确实包含示例,’对于我几乎从未使用过的罕见情况。这些东西写得很好,以至于没有很多不必要的浪费,并且有我可以实际使用的例子。伟大的家伙!

  • 阿比吉特 2012年2月15日,上午12:47

    很棒的工作!请继续启发我们所有人….

  • 先生 2012年3月15日,上午7:13

    RE:6.通过其索引节点号查找文件。
    RE: 找 command renames a file using the inode number.
    RE: # 找 -inum 16187430 -exec mv {} 新测试文件名 \;

    警告:运行以上命令将删除指向inode 16187430的所有重复的硬链接。“new-test-file-name”之后仍将指向inode 16187430,但是使用其他文件名或路径的指向inode 16187430的重复硬链接将消失。

    虽然可能性很低,但是存在重复的硬链接,但是更安全的方法是检查到索引节点16187430的重复的硬链接:
    找 -inum 16187430 -printf “%n %p\n”

    输出中的第一列显示硬链接计数和硬链接到inode 16187430的所有重复文件。如果硬链接计数为1,则不存在到inode 16187430的硬链接,并且可以安全地使用top命令。

    是的,这篇文章很陈旧,但是没有任何评论引用此内容。

  • 普里亚 2012年3月25日,晚上11:16

    您能否解释一下mindepth和maxdepth的用法…以及上述在2至4级之间找到passwd文件的示例…..

  • 拉马纳坦 2012年7月14日,下午3:01

    大家好,
    在上面执行第三个操作时,出现以下错误!

    `/ proc / 16918 / task / 16918 / fd’: Permission denied
    找: `/ proc / 16918 / task / 16918 / fdinfo’: Permission denied
    找: `/proc/16918/fd’: Permission denied
    找: `/proc/16918/fdinfo’: Permission denied
    找: `/proc/16935/task/16935/fd’: Permission denied
    找: `/proc/16935/task/16935/fdinfo’: Permission denied
    找: `/proc/16935/fd’: Permission denied
    找: `/proc/16935/fdinfo’: Permission denied
    找: `/sys/kernel/debug’: Permission denied
    / home / ram / ramapala / bo
    找: `/lost+found’: Permission denied
    找: `/tmp/vmware-root’: Permis

  • 丹达沙他巴尼 2012年8月14日,上午2:51

    awesome explanation for 找 command thanks a lot…。对所有的Unix命令执行

  • 彼得 2012年11月3日,下午4:29

    你好

    我正在寻找FIND IF REMOVE命令。我知道可以做到,但是不要’不知道该怎么做。我相信这是指条件表达式。我不在这里。

    I want to remove the smallest sized file IF a larger version exists of the same file (because it will be a better quality data). Both files will have the same date but the smaller files will have slightly different names, e:g 烹饪1-照片100px.jpg as opposed to 烹饪1-照片200px.jpg

    我的系统上有成千上万个不同目录中的文件。

    如果满足条件,如何使用FIND和REMOVE IF命令以便使用通配符表示文件名的一致部分来删除多个文件,以便它将删除文件的所有较小尺寸的版本,仅当较大的版本时才删除版本存在于我的系统上吗?

    eg: Find and remove the file 烹饪1-照片100px.jpg IF 烹饪1-照片200px.jpg exists, but to leave 烹饪1-照片100.jpg if no other other file named “cooking1-photograph”*.jpg exists?

    显然,我需要使用通配符代替例如“cooking1-photograph”这样该命令将查找列出的所有文件,而不仅仅是“cooking1-photograph” but also “cooking2-photograph” and “cooking3-photograph”然后应用条件条件寻找“100”,如果找到文件* 200.jpg,则删除文件* 100.jpg。

    我有成千上万的文件需要整理和剔除。

    能做到吗?请告诉我如何。

    谢谢
    彼得

  • 艾西瓦娅 2013年4月26日,上午3:47

    For 找ing big/small files sorting is being 完成 上 the basis of block size. I have tried sorting based 上 the actual size. Here it is :

    9.查找前5个大文件
    找 . -type f -ls | awk ‘{print $7″\t”$11}’|排序-nr |头-5

    10.查找前5个小文件
    找 . -type f -ls | awk ‘{print $7″\t”$11}’ | sort -n | head -5

  • 普兰尼 2013年6月18日,下午1:21

    你好
    我有100个档案。在80个文件中,有一个特定的字符串‘john’.
    Now my objective is to 找 all those files which contains the string ‘john’ and remove them. can any 上e please 救命 me to 做 that..

  • 艾西瓦娅 2013年6月19日,上午1:12

    @pranil

    #转到存在100个文件的目录
    #并尝试根据提示操作以下说明
    ls |读取文件名时

    sed s:John :: g $ fileName -i
    完成

  • 迪克·萨默菲尔德 2013年10月5日,下午1:36

    @ramanathan:
    我不’假设您将比问题晚一年从此答案中受益,但也许其他人也会受益。如果加2>/ dev / null到命令(即,将stderr重定向到位桶)错误消息(由于您没有’t拥有目录权限)将不会显示。
    因此,完整的内容将是:
    $ 找 / -name passwd 2>/dev/null
    / usr / bin / passwd
    / usr / share / bash-completion / completions / passwd
    / usr / share / lintian / overrides / passwd
    / usr / share / 做c / passwd
    /etc/pam.d/passwd
    / etc / passwd
    /etc/cron.daily/passwd
    (来自我的计算机的结果)

  • 以斯拉 2013年10月29日,晚上9:13

    很棒的文章。

  • `瑟什 2013年11月22日,晚上10:56

    请留下答复….
    if i want to list the files after 找ing them and then i want to delete those listed files…我怎样才能做到这一点????

  • 拉维 2014年1月29日,下午12:10

    它非常有用

  • 达里尔 2014年2月9日,下午4:41

    我的Beaglebone Black将运行简单程序(闪烁LED)4 -5小时,然后停止;
    到底是怎么回事?我怀疑一个‘ cron ‘ 要么 ‘ at’ setting.

  • 匿名 2014年2月21日,上午1:04

    找 -maxdepth 1 -not -iname “MyCProgram.c”
    上面的命令不适用于我的场景。
    I’ve 找 out 所有者 file inside my directory and command is
    找 /mailstore/test.int/ -maxdepth 2 -not -iname “owner”

  • 基兰 2014年11月4日上午5:55

    Can you please 救命 上 my requirement below.:
    需要编写一个shell脚本,该脚本将连接到unix服务器,转到特定目录下的特定文件并读取fie,然后将特定单词保存为text / csv文件。像搜索词错误一样,发生时将其保存在文本文件中。

    请它紧急,并在此先感谢

  • 斯里维迪亚 2014年12月12日,上午6:03

    非常感谢你

  • 萨尔吉特·S·吉尔 2015年4月4日,晚上9:09

    感谢您的出色工作!

  • 苏菲安 2016年4月14日,下午12:17

    Please provide example 通过 using 找 with -user and cp jointly like
    找 / -user username -exec cp {} destination \;

发表评论

版权© 2008–2020 拉梅什·纳塔拉詹(Ramesh Natarajan)。版权所有| 服务条款