ทุกขณะนี้จะเป็นประโยชน์ในการเพิ่มคำสั่งลงในประวัติใน Bash โดยไม่ต้องดำเนินการใด ๆ จนถึงตอนนี้สิ่งที่ฉันได้พบคือการเพิ่ม#
ด้านหน้าและการตีกลับ มีวิธีที่ดีกว่านี้ไหม?
ทุกขณะนี้จะเป็นประโยชน์ในการเพิ่มคำสั่งลงในประวัติใน Bash โดยไม่ต้องดำเนินการใด ๆ จนถึงตอนนี้สิ่งที่ฉันได้พบคือการเพิ่ม#
ด้านหน้าและการตีกลับ มีวิธีที่ดีกว่านี้ไหม?
คำตอบ:
history -s
คำสั่ง
./resize-images.sh
ที่บรรทัดสุดท้ายระบุคำสั่งที่คุณควรเรียกใช้เพื่อเลิกทำการเปลี่ยนแปลงมันจะมีประโยชน์มากถ้าสคริปต์สามารถเพิ่มคำสั่งลงในประวัติของฉันดังนั้นฉันเพิ่งกดup-enter
ถ้าฉันต้องการยกเลิก
history -s
คำสั่ง
คุณสามารถผูกการกดแป้นพิมพ์เพื่อทำสิ่งนี้ให้คุณ คุณสามารถป้อนสิ่งนี้ได้ในพรอมต์ Bash:
bind '"\C-q": "\C-a history -s \C-j"'
หรือเพิ่มลงในของคุณ~/.inputrc
:
"\C-q": "\C-a history -s \C-j"
จากนั้นคุณสามารถพิมพ์บางสิ่งและกดCtrl- qและมันจะถูกเพิ่มลงในประวัติโดยไม่ต้องดำเนินการ พื้นที่ก่อนประวัติศาสตร์ "" สาเหตุที่ทำให้history
คำสั่งตัวเองไปไม่ได้ถูกเพิ่มเข้าไปในประวัติศาสตร์ถ้าHISTCONTROL
ตัวแปรมีหรือignorespace
ignoreboth
สามารถเลือกการกดแป้นพิมพ์อื่นได้แทน "\ Cq"
มันยากที่จะเกิดอะไรขึ้นกับสิ่งที่สั้นกว่าตัวอักษร "คำสั่ง" หนึ่งตัวดังนั้นเราต้องไปที่ระดับการกดแป้น ด้วยการตั้งค่า bash ของฉันและคีย์บอร์ด US สิ่งที่คุณทำในตอนนี้:
#
(ต้องการSHIFT): คำสั่ง +1, กดปุ่ม 2 ครั้งดังนั้นรวม 3 คำแนะนำ 5 ปุ่มกด
การใช้ALT#ทำเช่นเดียวกันใน 1 คำสั่ง, 2 ปุ่มกด
YMMV ขึ้นอยู่กับรูปแบบแป้นพิมพ์และการกำหนดค่า bash ของคุณ
#command
นั้นเร็วกว่าhistory -s command
และใช้งานง่ายมากถ้าคุณแมปhistory-search-backward/-forward
อย่างถูกต้อง แต่มันเป็นเรื่องของรสนิยม