मैं सभी 8 अंकों की संख्या के साथ एक सॉर्ट की गई सूची बनाना चाहता हूं - 00000000 से 99999999 तक। मैंने शेल में टाइप किया:
f() {
while IFS="" read -r line; do
for i in {0..9}; do
echo "$line$i";
done;
done
}
echo | f | f | f | f | f | f | f | f | tee result.txt | wc -l
प्रतिक्रिया है
bash: echo: write error: Interrupted system call
bash: echo: write error: Interrupted system call
bash: echo: write error: Interrupted system call
99998890
मुझे ये तीन त्रुटियां और विकृत परिणाम क्यों मिले हैं।
मैं उपयोग करता हूं
GNU बैश, संस्करण 4.4.12 (1) -release (x86_64-pc-linux-gnu)
डेबियन जीएनयू / लिनक्स 9.6 (खिंचाव)
लिनक्स कर्नेल: 4.19.0 # 2 एसएमपी थू नवंबर 1 15:31:34 ईईटी 2018 x86_64 GNU / लिनक्स
}) सही तरीके से काम करती है। @ जीएडी 3 आर
konsoleखिड़की का आकार बदलता हूं । इस तरह का आकार बदलना मेरे मामले में लगभग पर्याप्त है, फिर भी आवश्यक नहीं है।
| tee result.txt, और अभी भी त्रुटि प्राप्त कर सकता हूं ।
/bin/echoमेरे मामले में) echoबिलिन के बजाय इस मुद्दे को फ़ंक्शन प्रतिरक्षा (या कम से कम कम प्रवण) बनाता है।
seq -w 0 99999999।