นี่คือการจับคู่คำสั่งที่สามารถเรียกใช้ในผู้ให้บริการโฮสต์ฟรีของ OnWorks โดยใช้เวิร์กสเตชันออนไลน์ฟรีของเรา เช่น Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS
โครงการ:
ชื่อ
จับคู่ - จับคู่สตริงกับ glob paterns
เรื่องย่อ
จับคู่ [-gilrqs] [-n ] [-ค cmd] [-NS รหัส] {[-NS] Belt hold | -NS } str1 [str2 ... ]
DESCRIPTION
จับคู่ตรวจสอบสตริงกับ Belt hold ซึ่งควรเป็นรูปแบบทรงกลมคล้ายเปลือก Belt hold
อาจมีอักขระพิเศษดังต่อไปนี้:
? NS "?" ตัวอักษรใน Belt hold จับคู่อักขระตัวเดียวในสตริง ยกเว้นว่า
อักขระ "/" จะจับคู่ได้ก็ต่อเมื่อได้รับเครื่องหมาย -s ตัวเลือก
* อักขระ "*" ใน Belt hold จับคู่อักขระศูนย์หรือมากกว่าในสตริง NS
ข้อยกเว้นคือจะจับคู่เฉพาะอักขระ "/" หากได้รับการจับคู่ -s ตัวเลือก
[ ... ]
ชุดอักขระระหว่างวงเล็บเหลี่ยมตรงกับอักขระใดๆ ในชุด ใน
นอกจากนี้ยังสามารถใช้อักขระ "-" เพื่อระบุช่วงได้ ตัวอย่างเช่น "[+e0-3]"
จะจับคู่อักขระ "+", "e", 0, 1, 2 หรือ 3 ในสตริงอินพุต ถึง
ใส่ยัติภังค์ ("-") ในชุดอักขระที่ตรงกัน ซึ่งรวมถึงเครื่องหมายยัติภังค์
ก่อนหรือหลัง หรือหนีมันด้วย "\"
-
คลาสอักขระนำหน้าด้วย "!" ตรงกับอักขระใด ๆ ยกเว้นที่ระบุไว้ใน
ระดับ. ข้อยกเว้นคือคลาสอักขระที่ถูกปฏิเสธจะจับคู่กับ "/" เฉพาะในกรณีที่
การแข่งขันได้รับ -s ตัวเลือก
\c อักขระแบ็กสแลชหนีอักขระถัดไป c. ดังนั้น เพื่อให้ตรงกับตัวอักษร "*"
คุณจะใช้รูปแบบ "\*"
จับคู่พิมพ์แต่ละสตริงที่ตรงกัน Belt hold , หนึ่งรายการต่อบรรทัด และออก 0 หากมีหนึ่งรายการขึ้นไป
สตริงที่ตรงกัน หากไม่มีสตริงที่ตรงกัน ให้จับคู่ออกโดยมีสถานะ 67 (หรือตัวเลือกอื่น
สถานะถูกระบุโดย -x ธง). ถ้า -n n ระบุแฟล็กแล้ว จับคู่พิมพ์เท่านั้น
ข้อความที่ตรงกับ nการเกิด "*" ใน patten
OPTIONS
-f ไฟล์
ระบุว่ารูปแบบควรอ่านจาก ไฟล์. การแข่งขันจะอ่านแต่ละบรรทัดของ
ไฟล์และพิจารณาว่าเป็นรูปแบบเพื่อให้ตรงกับสตริงอาร์กิวเมนต์ แต่ละ
สตริงอาร์กิวเมนต์ การจับคู่จะหยุดเมื่อกระทบกับบรรทัดแรกที่ตรงกันของไฟล์ ถ้า
ไฟล์ ไม่มีอยู่ จับคู่ออก 67 หรือรหัสใด ๆ ที่ระบุโดย -x.
-g โดยปกติไฟล์ -n ตัวเลือกเลือกข้อความที่ตรงกับอักขระ "*" เฉพาะในพาเทิร์น
-g เปลี่ยนลักษณะการทำงานนี้เพื่อใช้วงเล็บสำหรับการจัดกลุ่ม ตัวอย่างเช่น
ข้อความ "foo.c" จะจับคู่รูปแบบ "*(.[ch])" และผลลัพธ์ที่มี option -n 1 อยากจะเป็น
".ค". เพื่อรวมตัวอักษร "(" หรือ ")" ในรูปแบบด้วย -g ตัวเลือก คุณต้อง
นำหน้าอักขระด้วย "\"
-i ทำให้ตัวพิมพ์เล็กลง Str จะถือว่าตรงกันหากมีการเปลี่ยนแปลงใด ๆ บน
การใช้อักษรตัวพิมพ์ใหญ่ของมันจะตรงกัน ตัวอย่างเช่น สตริง "G" จะจับคู่รูปแบบ "[fh]"
-l เมื่อรูปแบบตรงกับสตริงมากกว่าหนึ่งวิธี -l ธงบอกว่าจะมอบหมายเป็น
ให้มากที่สุดเท่าที่จะเป็นไปได้ทาง "*" ทางซ้ายสุดในรูปแบบ เช่น รูปแบบ "*+*"
จะจับคู่ข้อความ "a+b+c" และ "*" ตัวแรกจะตรงกับ "a+b" พฤติกรรมนี้คือ
ค่าเริ่มต้น ดังนั้น -lผลกระทบของเป็นเพียงการเลิกทำก่อนหน้านี้ -r ธง.
-n n
ด้วยแฟล็กนี้ match พิมพ์ข้อความที่ตรงกับ nth "*" ในรูปแบบเช่น
ตรงข้ามกับการพิมพ์ทั้งสตริง "*" ซ้ายสุดตรงกับ -n 1.
ระบุ -n 0 ทำให้การจับคู่พิมพ์สตริงที่ตรงกันทั้งหมด ระบุ -n -1 or
การใช้ค่าที่มากกว่าจำนวน "*" ในรูปแบบจะทำให้ไม่พิมพ์ตรงกัน
อะไรก็ตาม ซึ่งในกรณีนี้ คุณยังสามารถใช้สถานะการออกเพื่อดูว่ามีการจับคู่หรือไม่
ค่าเริ่มต้นสำหรับ n คือ 0 เว้นแต่ -g ได้กำหนดไว้ด้วย ซึ่งในกรณีนี้
ค่าเริ่มต้นคือ 1
-c คำสั่ง
เมื่อ -c ถูกระบุ การแข่งขันวิ่ง คำสั่ง ด้วยเชลล์ระบบ (bin / sh /) ให้เป็น
อาร์กิวเมนต์ $0 สตริงทั้งหมดที่ตรงกัน และเป็นอาร์กิวเมนต์ $1, $2 เป็นต้น ส่วนต่างๆ ของ
สตริงที่ตรงกับ "*" ใน Belt hold . หากคำสั่งไม่ออกจากสถานะ
0 แมตช์จะออกทันที ก่อนประมวลผลแมตช์ต่อไปด้วยอะไรก็ตาม
สถานะ คำสั่ง กลับมา NS -c และ -n แฟล็กจะไม่เกิดร่วมกัน
-p Belt hold
ระบุรูปแบบที่จะจับคู่ NS -p แฟล็กเป็นตัวเลือก คุณสามารถระบุ
Belt hold เป็นอาร์กิวเมนต์แรกตามตัวเลือก แต่ถ้าอยากลอง
จับคู่สตริงอินพุตเดียวกันกับหลายรูปแบบ จากนั้นคุณต้องระบุแต่ละ
ลวดลายด้วย a -p ธง.
-q ตัวเลือกนี้มีความหมายเหมือนกันกับ -n -1; มันระงับการส่งออกเมื่อมีการแข่งขัน คุณ
ยังสามารถระบุได้ว่าการแข่งขันเกิดขึ้นจากสถานะการออก
-r เมื่อรูปแบบตรงกับสตริงมากกว่าหนึ่งวิธี -r ธงบอกว่าจะมอบหมายเป็น
ให้มากที่สุดเท่าที่จะเป็นไปได้ทางด้านขวาสุดของ "*" ในรูปแบบ ตัวอย่างเช่น กับ -r,
รูปแบบ "*+*" จะจับคู่ข้อความ "a+b+c" โดยมี "*" ตรงกับ "a" และตัวที่สอง
ตรงกับ "b+c"
-s โดยปกติ "*", "?" และคลาสอักขระที่ถูกปฏิเสธ ("[!...]") จะไม่ตรงกับ "/"
อักขระ -s เปลี่ยนลักษณะการทำงานนี้เพื่อให้ตรงกับเครื่องหมายทับ
-x รหัส
โดยค่าเริ่มต้น เมื่อไม่มีการจับคู่ การจับคู่จะออกโดยมีสถานะ 67 ด้วยตัวเลือกนี้
จับคู่ออกพร้อมสถานะ รหัส, แทน.
ตัวอย่าง
สมมติว่าคุณมีไดเร็กทอรีที่มีไฟล์จำนวนมากที่ลงท้ายด้วย .c และ .o. ถ้าสำหรับแต่ละไฟล์
ชื่อ ฟู.ซี คุณต้องการพยายามลบไฟล์ ฟูโอ, คุณสามารถเรียกใช้สิ่งต่อไปนี้
คำสั่ง:
จับคู่ -p '*.c' -c 'rm -f $1.o' *.c
เซิร์ฟเวอร์ที่ใช้ตัวจัดการรายชื่อผู้รับจดหมายมักจะส่งจดหมายจากที่อยู่ตีกลับของแบบฟอร์ม
รายชื่อ-[ป้องกันอีเมล]. หากคุณสมัครรับข้อมูลหลายรายการบนเซิร์ฟเวอร์เดียวกัน
อินเทอร์เฟซของบุรุษไปรษณีย์ทำให้ง่ายขึ้นหากคุณสมัครใช้งานภายใต้ที่อยู่เดียวกัน เพื่อแบ่ง
ส่งจดหมายไปยังหลาย ๆ โฟลเดอร์ตามที่อยู่ตีกลับในตัวแปรสภาพแวดล้อม ผู้ส่ง,
คุณอาจเลือกเมลบ็อกซ์ที่มีรหัสเชลล์ต่อไปนี้:
name=`match -n1 "*-[ป้องกันอีเมล]" "$SENDER"` \
&& echo "$HOME/Mail/incoming/host-$name.spool"
ใช้การแข่งขันออนไลน์โดยใช้บริการ onworks.net