วิธีรับข้อมูลจากผู้ใช้ใน Bash Script [เทคนิคขั้นสูง]

Withi Rab Khxmul Cak Phu Chi Ni Bash Script Thekhnikh Khan Sung



คุณสามารถสร้างสคริปต์แบบโต้ตอบได้โดยการรับข้อมูลจากผู้ใช้ในระหว่างการดำเนินการ นอกจากนี้ยังช่วยให้คุณจัดการผลลัพธ์ตามความต้องการ มีวิธีการง่ายๆ ในการรับข้อมูลจากผู้ใช้ นั่นเป็นเหตุผลที่ดีที่สุดที่จะใช้วิธีขั้นสูงในฐานะคนกลางหรือผู้เชี่ยวชาญ อย่างไรก็ตาม ผู้ใช้แบชจำนวนมากจำเป็นต้องเรียนรู้เทคนิคขั้นสูงเพื่อรับข้อมูลจากผู้ใช้ในสคริปต์ทุบตี ดังนั้นในบทช่วยสอนนี้ เราจะอธิบายสั้นๆ ทั้งหมด

วิธีรับข้อมูลจากผู้ใช้ใน Bash Script [เทคนิคขั้นสูง]

ด้วยคำสั่ง read คุณสามารถรับอินพุตได้ แต่คุณรู้หรือไม่ว่าคุณสามารถรับหลายอินพุตได้? ลองมาเป็นตัวอย่างเพื่อรับข้อมูลเชิงลึก สมมติว่าเราต้องการสร้างสคริปต์เพื่อทำการคำนวณเลขคณิตโดยใช้ตัวเลขหลายตัว (A, B, C, D, E):







#!/bin/bash

เสียงสะท้อน 'กรุณากรอกเลขสามตัว'

อ่าน เอ บี ซี ดี อี

ผลรวม =$ ( ( A+B+C+D+E ) )

เสียงสะท้อน 'นอกจากนี้คือ ผลรวม $ '



คูณ =$ ( ( * * * * และ ) )

เสียงสะท้อน 'การคูณคือ $คูณ '



ตอนนี้ เราสามารถเรียกใช้สคริปต์และป้อนตัวเลขเพื่อคำนวณการบวกและการคูณ:







หากคุณไม่ต้องการสร้างคำสั่ง echo แยกต่างหาก คุณสามารถเพิ่มคำสั่งนั้นในคำสั่ง read โดยใช้ตัวเลือก -p:

#!/bin/bash

อ่าน -หน้า 'กรุณากรอกชื่อและอายุของคุณ:' อายุอานาม



ถ้า [ อายุ $ -ล 17 ]

แล้ว

เสียงสะท้อน 'ขออภัย!! ท่านไม่มีสิทธิ์เข้าร่วมหลักสูตร'



อื่น

เสียงสะท้อน 'เยี่ยม!!คุณมีสิทธิ์ได้เรียน'

เป็น



สคริปต์ด้านบนกำหนดให้ผู้ใช้ต้องมีอายุอย่างน้อย 17 ปีจึงจะมีสิทธิ์เข้าร่วมหลักสูตรเฉพาะ:

รับอินพุตโดยใช้ Stdin (อินพุตมาตรฐาน)

หากคุณต้องการก้าวไปอีกขั้นในเทคนิคขั้นสูง คุณสามารถใช้แนวคิด stdin คุณสามารถใช้ stdin ในสคริปต์เพื่อรับวิธีแก้ปัญหาง่ายๆ ลองมาตัวอย่างที่เราต้องการกรองรายชื่อผู้มีสิทธิ์ที่ส่งค่าธรรมเนียมแล้ว เรามีรายการที่มีรายละเอียดต่างๆ เช่น ชื่อผู้สมัคร อายุ วันที่ส่งแบบฟอร์ม และสถานะการส่งค่าธรรมเนียม ดังนั้นเราจึงสามารถใช้สคริปต์ด้านล่างเพื่อดูรายละเอียดที่ต้องการ:

#!/bin/bash

เสียงสะท้อน 'รายละเอียดเกี่ยวกับการยื่นค่าธรรมเนียม:'



แมว / ผู้พัฒนา / สเตดิน | ตัด -d ' ' -ฉ 1 , 4 | เรียงลำดับ

สคริปต์นี้ให้ผลลัพธ์ต่อไปนี้:

ห่อ

นี่คือทั้งหมดที่เกี่ยวกับเทคนิคขั้นสูงที่คุณสามารถลองรับข้อมูลจากผู้ใช้ในสคริปต์ทุบตี ในบทช่วยสอนนี้ เราได้อธิบายตัวเลือกต่างๆ ในคำสั่ง read และ stdin เพื่อป้อนข้อมูลอย่างรวดเร็ว หากคุณยังใหม่กับ bash และต้องการทราบวิธีการป้อนข้อมูล โปรดดูที่เว็บไซต์ของเราเพื่อทราบข้อมูลเพิ่มเติม