Ksh में एक स्ट्रिंग विभाजित करें


4

मैं ksh में एक स्ट्रिंग को विभाजित करने के लिए एक त्वरित / आसान तरीका ढूंढ रहा हूं।

इसमें प्रत्येक आइटम के बीच विभिन्न संख्या में सीमांकक (रिक्त स्थान) होते हैं।

उदाहरण:

value1 value2                  value3

कोई सुझाव / सलाह?

जवाबों:


5

इनपुट स्ट्रिंग के साथ लूप के लिए उपयोग करने से व्हॉट्सएप पर विभाजन हो जाएगा।

LIST="value1  value2 value3"
for x in $LIST ; do
    echo $x
done

पैदावार

value1
value2
value3

या

LIST="value1  value2 value3"
set -A STRING "$LIST"
for x in $STRING ; do
    echo $x
done

पैदावार

value1
value2
value3

त्वरित, आसान, दर्द रहित। दलित उत्तर के लिए धन्यवाद।
user9398


0

Sed और वैकल्पिक रूप से grep के माध्यम से पाइपिंग भी काम करता है

LIST="value1  value2 value3" ;
echo "$LIST" | sed 's/[[:space:]]/\n/g' | grep .

यदि आप उन उद्धरणों को भी छोड़ सकते हैं जो कई रिक्त स्थान को हटाते हैं, हालांकि अन्य स्वरूपण प्रभावित हो सकते हैं।

LIST="value1  value2 value3" ;
echo $LIST | sed 's/[[:space:]]/\n/g'
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.