bash - Shell script to verify if file is equal to a number n -
इस सवाल का पहले से ही एक उत्तर है: < / p>
- 16 उत्तर
मैं bash पर काफी नया हूँ प्रोग्रामिंग। यहां मेरी पूर्ण समस्या है: शेल स्क्रिप्ट लिखें जो मापदंडों के जोड़े (एक फ़ाइल नाम और एक नंबर एन) लेता है और प्रत्येक जोड़ी के लिए यह सत्यापित करेगा कि फाइल का आकार संख्या n के बराबर है।
यहाँ क्या है मैंने ऐसा करने की कोशिश की: {$ 1 .. $ {@: (- 2): 1} .. 2} में जे के लिए {$ 2}
#! / Bin / bash करें। $ {@: -1} .. 2} यदि [$ (stat -c% s "$ i") -एक्की $ j] तो फिर से इको करें $ i $ j else इको $ i नहीं है $ jf किया गया
मैं प्रत्येक जोड़ी से वैरिएबल में फ़ाइल नाम डालने का प्रयास कर रहा हूं और जम्मू में प्रत्येक जोड़ी से नंबर n होगा। तब मैं अपनी फ़ाइल के आकार की जम्मू (संख्या n) के साथ तुलना कर रहा हूं। मुझे यकीन नहीं है कि मैं क्या गलत कर रहा हूं, मैंने अपने कोड के कुछ शोध और परीक्षण वाले भागों को देखने के लिए किया है कि यह काम करता है, लेकिन कुछ कथन के लिए मेरे साथ गलत है क्योंकि यह पूरी तरह प्रिंट करता है। आउटपुट: <पूर्व>
[: -एक: अपेक्षित ऑपरेटर अपेक्षित {cs.cs.2} नहीं {12..12..2}
धन्यवाद आप।
:
ब्रेस विस्तार किसी अन्य विस्तार से पहले किया जाता है , और अन्य विस्तारों के लिए विशेष रूप से किसी भी पात्र को परिणाम में संरक्षित किया जाता है। यह कड़ाई से पाठ है
यह केवल
bash पर लागू होता है, हालांकि, हालांकि, बाश किसी विस्तार या संदर्भ के संदर्भ में किसी भी वाक्यविन्यास व्याख्या को लागू नहीं करता है।
ksh और
zsh में यह काम करेगा:
$ bash -c 'foo = 2; के लिए मैं {1 .. $ foo} में; करो $ i; किया '{1..2} $ zsh -c' foo = 2; के लिए मैं {1 .. $ foo} में; करो $ i; किया '1 2 $ ksh -c' foo = 2; के लिए मैं {1 .. $ foo} में; करो $ i; किया '1 2
Comments
Post a Comment