यह मेरी पहली बार की गई स्क्रिप्टिंग है इसलिए मैं शायद एक आसान गलती कर रहा हूं।
मूल रूप से, मैं एक स्क्रिप्ट लिखने की कोशिश कर रहा हूं जो उपयोगकर्ता के समूह को प्राप्त करता है, और यदि वे एक निश्चित समूह में हैं, तो यह उसी के अनुसार लॉग करेगा। जाहिर है, वहाँ अधिक कार्यक्षमता होगी, लेकिन कोई बिंदु निर्माण नहीं है कि जब मैं भी regex काम नहीं कर सकता!
अब तक, मेरे पास यह है:
#!/bin/bash
regex="^([a-zA-Z0-9\-_]+ : [a-zA-Z0-9\-_]+) (usergroup)$"
# example output
groups="username : username usergroup"
echo "$groups" >> /home/jrdn/log
if [[ "$groups" =~ $regex ]]; then
echo "Match!" >> /home/jrdn/log
else
echo "No match" >> /home/jrdn/log
fi
हर जगह मैंने कोशिश की है कि regex, यह काम करता है। लेकिन बाश स्क्रिप्ट में, यह केवल कभी आउटपुट देता है $groups
, उसके बाद No match
। तो क्या कोई मुझे बता सकता है कि इसमें क्या गलत है?
^([a-zA-Z0-9\-_]+)
फिर कोलन वगैरह जोड़ें ... आपको बहुत जल्द पता लगाना चाहिए कि समस्या कहां है।