के साथ इंडेंट टेक्स्ट बनाना मैं एक पठनीय तरीके से स्क्रीन पर एक सूची मुद्रित करना चाहता हूं। मैं प्रत्येक तत्व के माध्यम से जाने के लिए एक लूप का उपयोग करता हूं और एक नई सूची बनाता हूं जो अल्पविराम और न्यूलाइन के साथ स्वरूपित होता है। समस्या यह है कि आउटपुट की पहली पंक्ति में, मुझे एक शीर्षक चाहिए। जैसे, मैं कुछ इस तरह प्रिंट करना चाहते हैं:बैश
List: red, green, blue, black, cars,
busses, ...
समस्या दूसरे और निम्नलिखित लाइनों में खरोज बनाने के लिए है। मैं इंडेंटेशन को दी गई लंबाई का होना चाहता हूं। इसलिए किसी दिए गए लंबाई की खाली रेखा बनाने के लिए समस्या कम हो जाती है। यही है, मैं एक समारोह चाहता हूं, create_empty_line_of_length
, जो रिक्त स्थान की मात्रा को आउटपुट करता है।
length=5
echo "start:$(create_empty_line_of_length $length) hello"
उत्पादन इस मामले में होना चाहिए:
start: hello
किसी को भी ऐसा करने के तरीके पता है?
क्या 'हैलो' और 'दुनिया' के सामने सात '_ नहीं होना चाहिए? आपका धन्यावाद। यह काम करता है :) –
नाह, "% 7s" एक शुद्ध संरेखण नियम है, यह कहता है "एक स्ट्रिंग लें, और इसे स्थिति 7 के साथ सही संरेखित करें, यानी: यह केवल स्थान बनायेगा। '% 2s' 'हैलो वर्ल्ड' नहीं होगा कोई भी जगह जोड़ें, क्योंकि "हैलो वर्ल्ड" 2 से बड़ा है, लेकिन '% 40s \ n% 40s \ n' 'हैलो' 'वर्ल्ड' हेलो और दुनिया को पॉज़ 40 –
के साथ संरेखित करेगा ओह, धन्यवाद! यह उपयोगी है! –