เรียกใช้คำสั่งสุดท้ายในขณะที่กำลังแทนที่ไวยากรณ์หรือการพิมพ์ผิด
หากคุณเคยป้อนคำสั่งที่มีความยาวเข้าสู่เทอร์มินัลและเมื่อพบข้อผิดพลาดทางไวยากรณ์ "ไม่มีไฟล์หรือไดเรกทอรีดังกล่าว" หรือ "ไม่พบคำสั่ง" เนื่องจากคุณพิมพ์ผิดพลาดคุณจะรักคำแนะนำอย่างรวดเร็วนี้ ช่วยให้คุณเรียกใช้คำสั่งสุดท้ายที่ดำเนินการได้ในขณะที่แทนที่ไวยากรณ์ผิดพลาด คุณจะต้องใช้เปลือกทุบตีดีฟอลต์เพื่อให้สามารถทำงานได้
ไวยากรณ์ทั่วไปที่จะใช้มีดังนี้:
!!:gs/old/new
!! รันคำสั่งสุดท้ายอีกครั้งในขณะที่: gs / old / new จะแทนที่ instance ของข้อความ "old" ด้วย "new" ภายในคำสั่งสุดท้าย
ตัวอย่างเช่นนี่คือคำสั่งเปลี่ยนไดเร็กทอรีที่เรียบง่ายพร้อมด้วยข้อผิดพลาดในเส้นทาง:
cd /System/Library/CoerServices/Dock.app/Contents/
ประกาศ "CoerServices" ควรเป็น "CoreServices" แต่แทนที่จะพิมพ์คำสั่งและเส้นทางทั้งหมดอีกครั้งคุณสามารถป้อนข้อมูลต่อไปนี้:
!!:gs/Coer/Core/
และทันใดนั้นคุณก็อยู่ในไดเรกทอรีที่ถูกต้อง
นี่เป็นประโยชน์อย่างมากเมื่อคุณค้นพบข้อผิดพลาดที่ลอยอยู่ในไวยากรณ์บรรทัดคำสั่งที่อื่น แต่ยังเหมาะสำหรับการสลับการตั้งค่าในและนอกสิ่งต่างๆเช่นค่าเริ่มต้นเขียนคำสั่งโดยแทนที่ "ไม่" ด้วย "ใช่" เป็นต้น:
!!:gs/no/yes
คุณยังสามารถวาง sudo ไว้หน้า !! เพื่อเรียกใช้คำสั่งก่อนหน้านี้เป็น root