และอย่าลืมทางลัดการขยายประวัติอันน่าอัศจรรย์ในการทุบตี 1
ฉันโพสต์ข้อความที่ตัดตอนมาบางส่วนจาก manpage ในกรณีที่คุณไม่ได้สักบนแขน (หรือจำไว้)
Event Designators
An event designator is a reference to a command line entry in the his‐
tory list.
! Start a history substitution, except when followed by a blank,
newline, carriage return, = or ( (when the extglob shell option
is enabled using the shopt builtin).
!n Refer to command line n.
!-n Refer to the current command line minus n.
!! Refer to the previous command. This is a synonym for `!-1'.
!string
Refer to the most recent command starting with string.
!?string[?]
Refer to the most recent command containing string. The trail‐
ing ? may be omitted if string is followed immediately by a new‐
line.
^string1^string2^
Quick substitution. Repeat the last command, replacing string1
with string2. Equivalent to ``!!:s/string1/string2/'' (see Mod‐
ifiers below).
!# The entire command line typed so far.
ฉันมักใช้ความสามารถในการอ้างถึง 'คำ' สุดท้ายของคำสั่งก่อนหน้า เช่น,
mkdir /foo/shmoo/adir.horribilus.foo
cp file1 file2 file3 file4 !$
ls -l !$
ในทั้งสองกรณี!$
ตรง/foo/shmoo/adir.horribilus.foo
นี้การแข่งขัน
1 ... ซึ่งถูกพรากไปจาก csh เพื่อลดขอบเขตการขโมยคุณสมบัติของ bash หน้า bash man จะกล่าว
The shell supports a history expansion feature that is similar to the
history expansion in csh.
ดังนั้นมัน "คล้ายกัน" ใด ๆ นี้อาจทำลายหรือcsh
tcsh
หรืออะไรก็ตามที่คุณไม่ได้ใช้เพราะคุณไม่ได้ยอดเยี่ยมเท่าที่bash
ควร