ทำไมการทดแทนประวัติทุบตียังเปิดใช้งานโดยค่าเริ่มต้น [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดเมื่อปีที่แล้ว ไม่มีใครรู้ว่าทำไมทุบตียังคงมีการเปิดใช้งานการทดแทนประวัติโดยค่าเริ่มต้น? ฉัน.bashrcรวมset +Hมาหลายปีแล้ว แต่คนอื่นบางคนยังคงถูกกัดโดยคุณลักษณะนี้ เมื่อพิจารณาว่าทุกคนใช้เทอร์มินัลพร้อมคุณสมบัติคัดลอกวางและทุบตีคอมไพล์ด้วยการแทนที่readlineไลบรารีและประวัติถูกเปิดใช้งานโดยค่าเริ่มต้นในเชลล์แบบโต้ตอบเท่านั้นมีเหตุผลใด ๆ ที่มีคุณสมบัตินี้หรือไม่ ไม่มีสคริปต์ใด ๆ ที่มีอยู่จะใช้งานไม่ได้แม้ว่าจะถูกปิดใช้งานโดยค่าเริ่มต้นสำหรับเชลล์ทั้งหมด ลองใช้วิธีนี้หากคุณไม่ทราบว่าทำไมการทดแทนประวัติเสีย: $ set +H # disable feature history substitution $ echo "WTF???!?!!?" WTF???!?!!? $ set -H # enable feature history substitution $ echo "WTF???!?!!?" echo WTF???echo WTF???!?!!? WTF???echo WTF???!?!!? (เห็นได้ชัดว่าสถานที่มีปัญหาที่สำคัญถ้ามันถูกปิดใช้งานโดยค่าเริ่มต้นสำหรับการเขียนสคริปต์ทั้งหมดและมีคุณสมบัติที่มีอยู่เพื่อตรวจสอบผลลัพธ์ก่อนที่จะดำเนินการ: shopt -s histverify.) ดูสิ่งนี้ด้วย: …