कैसे बच सकते हैं "-" बैश में [डुप्लिकेट]


14

संभव डुप्लिकेट:
यूनिक्स उपकरण: क्या होगा यदि किसी फ़ाइल का नाम माइनस कुछ है?

कृपया मुझे बताएं कि इससे कैसे बच सकते हैं:

[रूट @ यूनिक्स ~] # ./-श
-बश: / .श: अनुमति से वंचित
[रूट @ यूनिक्स ~] # chmod + x -sh
chmod: अमान्य मोड: `-श’
अधिक जानकारी के लिए `chmod --help 'आज़माएँ।
[रूट @ यूनिक्स ~] #

# chmod a + x "\\ - sh" chmod: `\\ - sh 'तक नहीं पहुँच सकता: ऐसी कोई फ़ाइल या निर्देशिका नहीं है
soundhax

जवाबों:


24

का उपयोग करें --

जैसे chmod +x -- -sh। GNU भाषा --में विकल्पों का अंत होता है, इसलिए -shअब विकल्प के रूप में पार्स नहीं किया जाता है।

[संपादित करें] जोड़ा गया उदाहरण:

बीटल: / होम / हेन्स / टेस्ट> स्पर्श - -श

बीटल: / होम / हेन्नेस / टेस्ट> एलएस -एल - -श
-rw ------- 1 मेंहदी उपयोगकर्ता 0 2013-01-04 17:20 -श

बीटल: / होम / हेन्नेस / टेस्ट> chmod + x - -sh

बीटल: / होम / हेन्नेस / टेस्ट> एलएस -एल - -श
-rwx ------ 1 हेन्नेस उपयोगकर्ता 0 2013-01-04 17:20 -श

दिलचस्प बात यह है कि यह GNU इको के साथ काम नहीं करता है, हालाँकि यह GNU प्रिंटफ के साथ काम करता है। यह काम करता है printf -- -sh:। और यह नहीं है echo -n -- -sh:।
लुकास पोकोर्न जू
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.