find command unix
Unix में Find कमांड का परिचय: Unix फाइंड कमांड के साथ फाइल्स और डाइरेक्टरीज़ को खोजें
यूनिक्स खोज कमांड फाइलों या निर्देशिकाओं की खोज करने के लिए एक शक्तिशाली उपयोगिता है।
खोज विभिन्न मानदंडों के आधार पर हो सकती है, और मिलान की गई फाइलें परिभाषित कार्यों के माध्यम से चलाई जा सकती हैं। यह कमांड प्रत्येक निर्दिष्ट पथनामे के लिए फ़ाइल पदानुक्रम को पुनरावृत्ति करता है।
=> पूर्ण यूनिक्स ट्यूटोरियल श्रृंखला के लिए यहां क्लिक करें
आप क्या सीखेंगे:
जावा में वस्तुओं की एक सरणी की घोषणा
यूनिक्स में कमांड का पता लगाएं
वाक्य - विन्यास:
find [options] [paths] [expression]
इस आदेश के लिए विकल्पों का उपयोग यह निर्दिष्ट करने के लिए किया जाता है कि प्रतीकात्मक लिंक का इलाज कैसे किया जाना चाहिए। यह खोज करने के लिए पथों के सेट के बाद है। यदि कोई पथ निर्दिष्ट नहीं है, तो वर्तमान निर्देशिका का उपयोग किया जाता है। दी गई अभिव्यक्ति तब रास्तों में पाई जाने वाली प्रत्येक फाइल पर चलाई जाती है।
अभिव्यक्ति में विकल्पों की एक श्रृंखला, परीक्षण और क्रियाएं शामिल हैं, प्रत्येक में एक बूलियन लौट रहा है। अभिव्यक्ति का मूल्यांकन पथ में प्रत्येक फ़ाइल के लिए दाएं से बाएं किया जाता है जब तक कि परिणाम निर्धारित नहीं किया जाता है अर्थात परिणाम सही या गलत होने के लिए जाना जाता है।
- विकल्प अभिव्यक्तियों का उपयोग खोज संचालन में बाधा डालने के लिए किया जाता है, और हमेशा सही लौटाया जाता है।
-
- -Depth: निर्देशिका सामग्री को संसाधित करने से पहले निर्देशिका को संसाधित करें।
- -मैक्सडीप: एक मैच के लिए उतरने के लिए प्रदान किए गए रास्तों के नीचे का अधिकतम स्तर।
- -mindepth: मिलान करने से पहले उतरने के लिए प्रदान किए गए रास्तों से परे न्यूनतम स्तर।
-
- परीक्षण अभिव्यक्तियों का उपयोग फ़ाइलों के विशिष्ट गुणों का मूल्यांकन करने और उनके अनुसार सही या गलत लौटने के लिए किया जाता है। (जहां कहीं भी 'n' का उपयोग किया जाता है: बिना किसी उपसर्ग के मैच n के सटीक मान के लिए है, '+' उपसर्ग के साथ, मैच n से अधिक मूल्यों के लिए है, और '-' उपसर्ग के साथ, मैच है; n। से कम मूल्यों के लिए।)
-
- -atime n: यदि फ़ाइल n दिनों पहले एक्सेस की गई थी, तो सही है।
- -ctime n: यदि फ़ाइल की स्थिति n दिन पहले बदल दी गई थी, तो वापस लौटती है।
- -M समय n: यदि फ़ाइल की सामग्री को n दिनों पहले संशोधित किया गया था, तो सही है।
- -नाम पैटर्न: यदि फ़ाइल का नाम प्रदान किए गए शेल पैटर्न से मेल खाता है तो यह सही है।
- -नाम पैटर्न: यदि फ़ाइल का नाम प्रदान किए गए शेल पैटर्न से मेल खाता है तो यह सही है। यहाँ मिलान केस असंवेदनशील है।
- -पथ पैटर्न: यदि पथ के साथ फ़ाइल का नाम शेल पैटर्न से मेल खाता है तो यह सही है।
- -रिगेक्स पैटर्न: यदि पथ के साथ फ़ाइल का नाम नियमित अभिव्यक्ति से मेल खाता है तो यह सही है।
- -साइज़ n: यदि फ़ाइल का आकार n ब्लॉक है तो सही है।
- -perm - मोड: यदि फ़ाइल के लिए मोड के लिए सभी अनुमति बिट्स सेट हैं, तो सही है।
- -Type c: यदि फ़ाइल प्रकार c (उदा। ब्लॉक डिवाइस फ़ाइल के लिए c b ’, निर्देशिका के लिए etc. d’ है) तो सही है।
- -नाम: यदि फ़ाइल उपयोगकर्ता नाम Return नाम ’की है, तो सही है।
-
- कार्रवाई अभिव्यक्तियों का उपयोग उन कार्यों को परिभाषित करने के लिए किया जाता है जिनके दुष्प्रभाव होते हैं और यह सही या गलत हो सकता है। यदि क्रियाएँ निर्दिष्ट नहीं हैं, तो सभी मिलान फ़ाइलों के लिए '-प्रिंट' क्रिया की जाती है।
-
- -Dlete: मिलान की गई फ़ाइल को हटा दें, और सफल होने पर वापस लौटें।
- -exec कमांड: प्रत्येक मिलान फ़ाइल के लिए दिए गए कमांड को निष्पादित करें, और यदि रिटर्न मान 0 है तो वापस लौटें।
- -ओक कमांड: ’एक्ज़ीक्यूटिव एक्सप्रेशन’ की तरह, लेकिन पहले उपयोगकर्ता के साथ पुष्टि करता है।
- -ls: मिलान फ़ाइल को-ls -dils के प्रारूप के अनुसार सूचीबद्ध करें।
- -प्रिंट: मिलान फाइल का नाम प्रिंट करें।
- -प्रिंट: यदि फ़ाइल एक निर्देशिका है, तो उसमें न उतरें, और सही लौटें।
-
- अभिव्यक्ति का मूल्यांकन बाएं से दाएं किया जाता है और निम्नलिखित ऑपरेटरों का उपयोग करके एक साथ रखा जाता है।
-
- _ ( विस्तार करें ) : पूर्वता को मजबूर करने के लिए उपयोग किया जाता है।
- ! expr: एक अभिव्यक्ति को नकारने के लिए प्रयुक्त।
- expr1 -सेवा मेरे expr2: परिणाम दो भावों का result और 'होता है। Expr2 केवल expr1 का मूल्यांकन किया जाता है सच है।
- expr1 expr2: इस मामले में ‘और 'ऑपरेटर निहित है।
- expr1 -या expr2: परिणाम दो अभिव्यक्तियों का एक result या 'है। Expr2 केवल expr1 का मूल्यांकन गलत है।
-
उदाहरण
वर्तमान निर्देशिका और इसके पदानुक्रम में पाई गई सभी फ़ाइलों की सूची बनाएं
$ find.
वर्तमान पदानुक्रम में मिली सभी फ़ाइलों की सूची दें, और सभी पदानुक्रम नीचे / घर / xyz
$ find. /home/XYZ
वर्तमान निर्देशिका और उसके पदानुक्रम में abc नाम से एक फ़ाइल खोजें
$ find ./ -name abc
वर्तमान निर्देशिका और उसके पदानुक्रम में xyz नाम से एक निर्देशिका खोजें
$ find ./ -type d -name xyz
वर्तमान निर्देशिका के नीचे abc.txt नाम से एक फ़ाइल खोजें, और प्रत्येक मैच को हटाने के लिए उपयोगकर्ता को संकेत दें।
ध्यान दें कि '{}' स्ट्रिंग को रन करते समय वास्तविक फ़ाइल नाम द्वारा प्रतिस्थापित किया जाता है और ''; स्ट्रिंग का उपयोग कमांड को निष्पादित करने के लिए समाप्त करने के लिए किया जाता है।
$ find ./ -name abc.txt -exec rm -i {} ;
वर्तमान निर्देशिका के नीचे पिछले 7 दिनों में संशोधित फ़ाइलों के लिए खोजें
$ find ./ -mtime -7
उन फ़ाइलों को खोजें जिनकी वर्तमान पदानुक्रम में सभी अनुमतियाँ सेट हैं
$ find ./ -perm 777
निष्कर्ष
संक्षेप में, यूनिक्स में कमांड ढूंढें वर्तमान कार्यशील निर्देशिका के नीचे सभी फाइलें लौटाता है। इसके अलावा, ढूँढें आदेश उपयोगकर्ता को प्रत्येक मिलान की गई फ़ाइल पर एक कार्रवाई निर्दिष्ट करने की अनुमति देता है।
=> पूर्ण यूनिक्स ट्यूटोरियल श्रृंखला के लिए यहां क्लिक करें
अनुशंसित पाठ
- उदाहरणों के साथ यूनिक्स में कमान काटें
- उदाहरणों के साथ यूनिक्स में Ls कमांड
- यूनिक्स में फाइल मैनिपुलेशन: यूनिक्स फाइल सिस्टम का अवलोकन
- यूनिक्स कैट कमांड सिंटैक्स, उदाहरण के साथ विकल्प
- सरल उदाहरणों के साथ यूनिक्स में ग्रीप कमांड
- सिंटैक्स, विकल्प और उदाहरण के साथ यूनिक्स सॉर्ट कमांड
- यूनिक्स में टार कमांड बैकअप बनाने के लिए (उदाहरण)
- यूनिक्स में दो फाइलों की तुलना कैसे करें: फाइल तुलना कमांड