ในระบบ UNIX คุณสามารถกดลูกศรบนและล่างเพื่อเลื่อนดูคำสั่งก่อนหน้า มันมีประโยชน์มาก
บางครั้งฉันก็ขึ้นไปและพบคำสั่งที่ฉันต้องการใช้อีกครั้ง แต่มีรูปแบบบางอย่าง history
ถ้าฉันจะเปลี่ยนแปลงดังกล่าวแล้วผมไม่ได้มีวิธีการที่จะได้รับกลับคำสั่งเดิมจนกว่าฉันตรวจสอบใน
มีวิธีใดบ้างที่จะ "เลิกทำ" การเปลี่ยนแปลงคำสั่งในประวัติการเข้าใช้ผ่านทางคีย์?
วิธีแก้ปัญหาปัจจุบันของฉันคือการผนวก#
คำสั่ง วิธีนี้ดำเนินการคำสั่งปัจจุบันเป็นความคิดเห็นจึงไม่มีอะไรเกิดขึ้น จากนั้นฉันสามารถเรียกดูอีกครั้งผ่านคำสั่งด้วยปุ่มต่างๆ ปัญหาคือว่าคำสั่งที่ฉันใช้อาจจะเป็นรายการที่อยู่ห่างไกลในรายการดังนั้นการขึ้นอีกสองร้อยครั้งนั้นค่อนข้างน้อย Control + R ไม่ใช่วิธีแก้ปัญหาอย่างใดอย่างหนึ่งเนื่องจากฉันอาจจำไม่ได้ว่าสิ่งที่ฉันกำลังมองหา
ตัวอย่าง
ฉันพิมพ์ "50 คำสั่งที่ผ่านมา" ต่อไปนี้:
ls -l /etc/httpd/conf/
ตอนนี้ฉันขึ้นไปที่บรรทัดนั้นและเปลี่ยนเป็น
ls -l /etc/init.d/
แต่ไม่ได้กด Enter ตอนนี้ฉันต้องการไปที่ls -l /etc/httpd/conf/
อีกครั้ง
สภาพแวดล้อมของฉัน
$ echo $SHELL
/bin/bash
$ echo $TERM
xterm
ksh
พฤติกรรมของแตกต่างกันที่นี่ดูเหมือน และตัวเลือกการแก้ไขประวัติของคุณยังขึ้นอยู่กับโหมดการแก้ไขที่เลือก ในksh
's vi โหมดเช่นรายการเก่าไม่ถูกเขียนทับและฉันยังสามารถออกคำสั่งยกเลิกเหมือนในvi
กับ 'U'
ksh
แต่ก็ดีที่จะรู้ว่ามีสิ่งนั้นอยู่ที่นั่น
ksh
ตัวอย่างเช่นคุณสามารถแก้ไขรายการประวัติและเรียกใช้โดยไม่ต้องลบ "เวอร์ชันก่อนหน้า" ของรายการ คุณมีคำสั่งที่เรียกใช้ทั้งหมด