ฉันต้องยอมรับอินพุตของผู้ใช้ภายในเชลล์สคริปต์ที่สามารถทำงานได้ทั้งใน BASH และ ZSH ฉันคุ้นเคยกับการใช้ readline
ในภาษาอื่น แต่ดูเหมือนว่าจะไม่ใช่ตัวเลือกที่ใช้งานได้ในการเขียนเชลล์สคริปต์
ตัวอย่างพรอมต์อาจเป็น:
Please enter the value> 1234_
ฉันจะนำเสนอผู้ใช้ด้วยอินพุตที่แก้ไขได้ซึ่งมีค่าเริ่มต้นที่สามารถแก้ไขได้ (backspaced) ที่เข้ากันได้กับทั้งสองเชลล์ได้อย่างไร
read -e -p 'Please enter the value> ' -i '1234'
- person Cyrus   schedule 13.06.2019vared
บิวด์อิน ของโมดูล ZLE . มันเป็นการเดานะi=1234; vared -p 'Please enter the value> ' i
- person Toby Speight   schedule 13.06.2019bash
, ZLE สำหรับzsh
) - person chepner   schedule 13.06.2019read -e -p 'Please enter the value> ' -i '1234' answer
ผลลัพธ์ในลักษณะเช่น:Please enter the value> 1236
แสดงอินพุตของผู้ใช้ที่แก้ไข เช่น:echo "$answer"
1236
- person Bernie Reiter   schedule 16.07.2020read
จะใช้ตัวแปรREPLY
แน่นอนว่าโค้ดจะเข้าใจง่ายกว่าถ้าคุณระบุตัวแปร - person Cyrus   schedule 16.07.2020