ฉันมีฟังก์ชั่นเปลือกทุบตีที่จะโต้แย้งและทำอะไรกับมันถ้าจำเป็น
do_somthing() {
if [need to do something on $1]
then
do it
return 0
else
return 1
fi
}
ฉันต้องการเรียกวิธีนี้โดยมีข้อโต้แย้งหลายอย่างและตรวจสอบว่าอย่างน้อยหนึ่งข้อประสบความสำเร็จหรือไม่
ฉันลองทำสิ่งที่ชอบ:
if [ do_something "arg1" ||
do_something "arg2" ||
do_something "arg3" ]
then
echo "OK"
else
echo "NOT OK"
fi
สิ่งที่จะเป็นไวยากรณ์ที่ถูกต้องสำหรับที่?
แก้ไข
ด้วย - ฉันต้องการแน่ใจว่าแม้ว่าเงื่อนไขแรกจะเป็นจริงเงื่อนไขอื่น ๆ ทั้งหมดจะยังคงได้รับการประเมิน
ขอบคุณ