นี่เป็นครั้งแรกของฉันที่สคริปต์ทุบตีดังนั้นฉันอาจทำผิดพลาดง่าย
โดยทั่วไปฉันพยายามเขียนสคริปต์ที่ได้รับกลุ่มของผู้ใช้และหากพวกเขาอยู่ในกลุ่มที่แน่นอนก็จะเข้าสู่ระบบตามนั้น เห็นได้ชัดว่ามีฟังก์ชั่นเพิ่มเติม แต่ไม่มีจุดที่สร้างเมื่อฉันไม่สามารถใช้ 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\-_]+)
จากนั้นจึงเพิ่มลำไส้ใหญ่และอื่น ๆ ... คุณควรจะรู้ในไม่ช้าว่าปัญหาอยู่ที่ไหน