हिन्दी

डेवलपर टूल · chmod कैलकुलेटर

chmod -R कैपिटल एक्स के साथ: निष्पादन योग्य फ़ाइलों के बिना पुनरावर्ती अनुमतियाँ

· यह काम किस प्रकार करता है

chmod Unix डेवलपर-वर्कफ़्लो

पुनरावर्ती आदेश एक विशिष्ट Unix अनुमति-बिट आरेख के रूप में दिखाए गए हैं
मूल ToolAcre वेक्टर चित्रण

पुनरावर्ती chmod या तो निर्देशिकाओं से निष्पादित स्ट्रिप्स करता है या इसे फ़ाइलों में जोड़ता है, जब तक कि आप भेद के लिए बनाए गए टूल का उपयोग नहीं करते हैं। यह पोस्ट कैपिटल एक्स और खोज विकल्प के बारे में बताती है।

ट्री में प्रत्येक फ़ाइल को अब निष्पादन योग्य के रूप में चिह्नित किया गया है - chmod -R 755 ने निर्देशिकाओं को ठीक किया और प्रत्येक .txt को भी निष्पादन योग्य बना दिया।

एक पुनरावर्ती कमांड उन वस्तुओं पर एक मोड लागू कर सकता है जिन्हें विभिन्न अनुमतियों की आवश्यकता होती है। 755 दर्ज करें और कैलकुलेटर rwxr-xr-x प्रस्तुत करता है, फिर नियमित-फ़ाइल और निर्देशिका स्पष्टीकरण की तुलना करें। निष्पादन एक फ़ाइल को एक प्रोग्राम के रूप में चलने देता है, लेकिन एक निर्देशिका दर्ज करने और उसकी नामित सामग्री तक पहुंचने देता है। इसलिए एक अंक बिल्कुल भिन्न परिणाम देता है।

बिल्डर -R प्रदर्शित कर सकता है और आपूर्ति किए गए पथ को सुरक्षित रूप से उद्धृत कर सकता है, लेकिन यह उस पथ को कभी नहीं खोलता है या chmod नहीं चलाता है। 755 की तुलना 644 से करें: पहला अनुदान प्रत्येक वर्ग के लिए निष्पादित होता है, जबकि दूसरा rw-r--r-- प्रस्तुत करता है। इससे पता चलता है कि वास्तविक निर्देशिका ट्री के बारे में कुछ भी दावा किए बिना रिकर्सन अनपेक्षित निष्पादन योग्य फ़ाइलें कैसे बना सकता है।

एक ही मोड दोनों में फिट क्यों नहीं हो सकता - फ़ाइलें आमतौर पर 644 और निर्देशिका 755 चाहती हैं, और -R हर चीज़ पर एक मोड लागू करता है

एक मोड निर्देशिकाओं और नियमित फ़ाइलों के लिए अलग-अलग नियम व्यक्त नहीं कर सकता है। मोड 755 मालिक को पढ़ने, लिखने और निष्पादित करने की सुविधा देता है, समूह और अन्य प्राप्तकर्ताओं को पढ़ने और निष्पादित करने की सुविधा देता है। मोड 644 प्रत्येक निष्पादन बिट को हटा देता है और मालिक के लिए लिखना सुरक्षित रखता है। लक्ष्य चयनकर्ता स्पष्टीकरण बदलता है, अंतर्निहित बिट्स नहीं।

मैट्रिक्स में स्वतंत्र रूप से उम्मीदवारों की तुलना करें। 755 के अंतर्गत, प्रत्येक वर्ग में निष्पादन होता है; 644 के अंतर्गत, प्रत्येक निष्पादन बॉक्स स्पष्ट है और केवल स्वामी ही लिखना बरकरार रखता है। ऑक्टल, प्रतीकात्मक पाठ, सारांश और चेकबॉक्स एक पूर्णांक से प्राप्त होते हैं, इसलिए समझौता लगातार एन्कोडिंग की पुष्टि करता है, किसी अज्ञात लक्ष्य या वातावरण के लिए उपयुक्तता की नहीं।

कैपिटल एक्स अनुमति - निष्पादन केवल वहीं सेट किया जाता है जहां लक्ष्य एक निर्देशिका है या पहले से ही कुछ वर्ग के लिए निष्पादित है

कैपिटल एक्स chmod के प्रतीकात्मक कमांड व्याकरण से संबंधित है, जिसे यह कैलकुलेटर न तो पार्स करता है और न ही उत्पन्न करता है। इसका प्रतीकात्मक इनपुट निश्चित नौ-वर्ण एलएस डिस्प्ले है, और जेनरेट किए गए असाइनमेंट आर, डब्ल्यू और एक्स के साथ स्पष्ट यू =, जी = और ओ = क्लॉज का उपयोग करते हैं। यह अंतिम मोड प्रदर्शित कर सकता है, लेकिन यह तय नहीं कर सकता कि कैपिटल एक्स किस ट्री सदस्य का चयन करेगा।

उस भेद को एक दृढ़ सीमा मानें। rwxr-xr-x का निरीक्षण करने के लिए 755 दर्ज करें और rw-r--r-- का निरीक्षण करने के लिए 644 दर्ज करें; दोनों निश्चित परिणाम हैं. पेज निर्देशिकाओं और फ़ाइलों के लिए अलग-अलग तरीके से निष्पादन की व्याख्या करता है, फिर भी इसमें कोई पथ वॉकर, प्रकार सूची या पूर्व निष्पादन स्थिति नहीं है। यह मिश्रित पुनरावर्ती लक्ष्यों में पूंजी एक्स को मॉडल नहीं कर सकता है।

कैपिटल एक्स chmod व्याकरण से संबंधित है लेकिन इस कैलकुलेटर द्वारा उत्पन्न नहीं होता है

समर्थित तुलना पूर्ण मोड से शुरू होती है, पुनरावर्ती प्रतीकात्मक कमांड से नहीं। निर्देशिका के लिए 755 दर्ज करें: सारांश 0755 और drwxr-xr-x दिखाता है, जिसमें सभी वर्गों के लिए मालिक लिखते हैं और पढ़ते हैं और निष्पादित करते हैं। फ़ाइल के लिए 644 दर्ज करें: यह 0644 और -rw-r--r-- दिखाता है, बिना किसी निष्पादन अनुमति के।

साथ ही, प्रत्येक वर्ग 755 से 644 तक निष्पादन खो देता है, जबकि मालिक लिखना और सार्वभौमिक पढ़ना बना रहता है। जेनरेट किए गए असाइनमेंट अलग रहते हैं: u=rwx,g=rx,o=rx और u=rw,g=r,o=r। कैलकुलेटर न तो उन्हें एक पुनरावर्ती ऑपरेशन में जोड़ता है और न ही लक्ष्य चुनता है; यह अलग से समीक्षा किए गए वर्कफ़्लो के लिए अभ्यावेदन का सत्यापन करता है।

कार्यान्वित उदाहरण: परिणामी 755 और 644 मोड की अलग-अलग तुलना करें

खोज के साथ फ़ाइलों और निर्देशिकाओं को विभाजित करना एक बाहरी वर्कफ़्लो है, कैलकुलेटर सुविधा नहीं। पेज में कोई स्कैनर, पथ फ़िल्टर, प्रकार परीक्षण या निष्पादक नहीं है। इसके बजाय यह कमांड असेंबल करने से पहले प्रस्तावित निर्देशिका और फ़ाइल मोड को डीकोड कर सकता है। 755 और 644 को अलग-अलग जांचने से किसी परिचित संख्या को निष्पादन अनुदान को छिपाने से रोका जा सकता है।

खोज को रूपांतरण से अलग रखें. निर्देशिकाओं या नियमित फ़ाइलों का चयन करने वाले किसी भी तंत्र की समीक्षा कहीं और की जानी चाहिए। कैलकुलेटर के भीतर, अंकगणित नियतात्मक है: पढ़ें योगदान 4, लिखें 2 और प्रत्येक वर्ग अंक पर 1 निष्पादित करें। यह खोज सिंटैक्स, ट्रैवर्सल नियम या पोर्टेबल पुनरावर्ती व्यवहार के लिए समर्थन का दावा किए बिना इच्छित मानों की पुष्टि करता है।

खोज-आधारित रिकर्सन एक बाहरी वर्कफ़्लो है, कैलकुलेटर सुविधा नहीं

एक प्रदर्शित पुनरावर्ती आदेश प्रतीकात्मक लिंक के बारे में कुछ भी गारंटी नहीं देता है। "पुनरावर्ती रूप से लागू करें" का चयन करने से पूर्वावलोकन में केवल -R जुड़ जाता है; यह निर्देशिकाओं का निरीक्षण नहीं करता, लिंक नहीं खोजता या ऑपरेटिंग-सिस्टम व्यवहार की भविष्यवाणी नहीं करता। पथ फ़ील्ड केवल उद्धृत शेल टेक्स्ट बनाता है। यहां तक ​​कि सक्रिय शेल वर्ण भी निष्क्रिय रहते हैं जब तक कि कोई जानबूझकर कमांड को कहीं और कॉपी और निष्पादित नहीं करता है।

पूर्वावलोकन को अनुरोधित मोड बिट्स के रूप में पढ़ें, सिमुलेशन के रूप में नहीं। कैलकुलेटर 755 को rwxr-xr-x के रूप में प्रस्तुत कर सकता है और उद्धृत पथ के साथ chmod -R 755 उत्पन्न कर सकता है। यह पहुँचे हुए ऑब्जेक्ट, लिंक-फ़ॉलोइंग व्यवहार या फ़ाइल सिस्टम समर्थन की पहचान नहीं कर सकता है। उन उत्तरों के लिए वास्तविक कमांड कार्यान्वयन और वातावरण की आवश्यकता होती है, न ही ब्राउज़र इनपुट द्वारा दर्शाया जाता है।

प्रदर्शित -R कमांड में कोई क्रॉस-प्लेटफ़ॉर्म सिम्लिंक गारंटी नहीं है

अभिलेखागार, सिंक्रोनाइज़ेशन टूल या Git द्वारा मोड संरक्षण स्रोतों के बाहर होता है। कैलकुलेटर कोई संग्रह, रिपॉजिटरी मेटाडेटा या स्थानांतरण इतिहास नहीं पढ़ता है। यह एक मान स्वीकार करता है और ऑक्टल, प्रतीकात्मक पाठ, चेकबॉक्स, गद्य और एक chmod कमांड प्रस्तुत करता है। यह आपूर्ति की गई अनुमति मान को सत्यापित करता है, न कि कोई अन्य टूल इसे रिकॉर्ड करता है, त्यागता है या पुनर्निर्माण करता है।

बाहरी स्थानांतरण द्वारा मोड बदलने के बाद, कैलकुलेटर का उपयोग केवल सिद्ध अंतरों के लिए करें। देखे गए और अपेक्षित मानों को डिकोड करें, फिर बदले गए स्वामी, समूह या अन्य बिट्स की पहचान करें। उदाहरण के लिए, 755 और 644 सभी निष्पादन स्थितियों में भिन्न हैं। स्रोत उस डेल्टा का श्रेय rsync, tar, Git, umask या किसी फ़ाइल सिस्टम को नहीं दे सकता।

पुरालेख, rsync और Git मोड संरक्षण स्रोत सेट के बाहर हैं

विश्वसनीय टेकअवे कैपिटल-एक्स रेसिपी की तुलना में संकीर्ण है। निर्देशिकाओं और फ़ाइलों को अलग-अलग अंतिम मोड की आवश्यकता हो सकती है, और कैलकुलेटर प्रत्येक परिणाम को सुपाठ्य बनाता है। यह ऑक्टल या निश्चित प्रतीकात्मक इनपुट स्वीकार करता है और मैट्रिक्स को सिंक्रनाइज़ करता है। इस तुलना में, 755 प्रत्येक वर्ग के लिए निष्पादन को सुरक्षित रखता है, जबकि 644 हर जगह से निष्पादन को हटा देता है।

जनरेट किए गए आउटपुट को समीक्षा आर्टिफैक्ट के रूप में उपयोग करें। पेज -R जोड़ सकता है, लेकिन सशर्त रूप से निर्देशिकाओं का चयन नहीं कर सकता, मौजूदा निष्पादन बिट्स का निरीक्षण नहीं कर सकता या लिंक ट्रैवर्सल निर्धारित नहीं कर सकता। इसमें स्वामित्व, ACL और नीति संदर्भ का भी अभाव है। प्रत्येक निश्चित परिणाम को सत्यापित करें, अष्टक और प्रतीकात्मक समझौते की पुष्टि करें, फिर किसी भी मोड को लागू करने से पहले वास्तविक लक्ष्यों का निरीक्षण करें।