Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
1.8k views
in Technique[技术] by (71.8m points)

find - searching an exact number of files in a Linux directory

I want recursively count files in a Linux directory using this

find DIR_NAME -type f | wc -l

my question is , how to stop the find execution above if more than 1000 files are found in that folder ? Is it possible ? Or do I need to wait find execution ?


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

You can use head to limit the number of lines returned by find:

find DIR_NAME -type f | head -n 1000 | wc -l

The head program will exit after the first thousand lines, find will receive SIGPIPE and exit as well.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...