"Sudo / bin / ls% s% foo" का क्या अर्थ है?


0

मैं उपरोक्त आदेश को समझने की कोशिश कर रहा हूं।

sudo /bin/ls %s %file_path
  1. क्या करता %है? क्या यह किसी प्रकार का प्रतिस्थापन तंत्र है?

  2. क्या करता sudo /bin/lsहै?


इसका क्या संदर्भ है? आप इसे कुछ जावा कोड के अंदर देखते हैं? (चूँकि आप @JavaDeveloper हैं)
टॉम यान



1
लगता है जैसे आप कुछ अजगर को गलत समझ रहे हैं और गलत समझ रहे हैं। "sudo /bin/ls %s" % fooअजगर का एक समझदार टुकड़ा होगा जो एक प्रारूप स्ट्रिंग को शामिल करता है जो शेल कमांड को आउटपुट करता है।
शौक

जवाबों:


1

बैश स्क्रिप्टिंग में% एंकरिंग के लिए खड़ा है, लेकिन यह कभी-कभी कार्यक्रमों के बीच भिन्न हो सकता है कि यह कुछ पैरामीटर या किसी अन्य के हिस्से के रूप में क्या करता है । के लिए ls यह कुछ नहीं करता है। सुडो के लिए यह कुछ चीजें करता है, लेकिन इस संदर्भ में नहीं; यह मेरे लिए कोई मतलब नहीं है ... यह कमांड बस रूट के रूप में प्रयास करता है (रिकॉर्ड के लिए, आपको लगभग कभी भी एलएस को रूट के रूप में नहीं चलाना होगा, बहुत कम जगहें हैं जहां फ़ाइलनाम को सामान्य उपयोगकर्ताओं द्वारा एलएस के माध्यम से एक्सेस नहीं किया जा सकता है ) फ़ाइलों के लिए खोज निर्देशिका% s और% foo, और हमें "ss% s: कोई ऐसी फ़ाइल या निर्देशिका नहीं एक्सेस कर सकता है" का परिणाम देना चाहिए और% foo के लिए बहुत समान है। (जब तक आप इसे नहीं बना लेते% s निर्देशिका कभी नहीं हो सकती)

स्क्रिप्टिंग के लिए यह नीचे दिया गया है।

से http://wiki.bash-hackers.org/syntax/pe :

एंकरिंग के अतिरिक्त आप एक एंकर को "एंकर" कर सकते हैं: ए # (हैशमार्क) इंगित करेगा कि आपकी अभिव्यक्ति स्ट्रिंग के शुरुआती हिस्से के साथ मेल खाती है, एक% (प्रतिशत-संकेत) इसे अंतिम भाग के लिए करेगा।

MYSTRING=xxxxxxxxxx
echo ${MYSTRING/#x/y}  # RESULT: yxxxxxxxxx
echo ${MYSTRING/%x/y}  # RESULT: xxxxxxxxxy

(कोड क्या कर रहा है कि यह "y" के लिए पहले या अंतिम "x" आउट हो रहा है)

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.