!1255:p
Sẽ làm điều này
!
là lịch sử nhớ lại
1255
là
:p
in số dòng nhưng không thực hiện
Sau đó, bạn có thể sử dụng mũi tên lên để lấy lại lệnh trước đó (chưa được thực hiện) và bạn có thể thay đổi nó khi bạn cần.
Tôi thường kết hợp điều này với hg
("Lịch sử Grep") - bí danh yêu thích của tôi.
$ alias hg # Maybe use hgr instead if you are a Mercurial CLI user.
alias hg='history | tail -200 | grep -i'
Điều này tìm kiếm văn bản trên một dòng lịch sử gần đây, bất kể trường hợp nào và được sử dụng theo cách này:
Khi tôi muốn tìm kiếm các lệnh vi gần đây để chỉnh sửa một tệp nhất định và sau đó tôi muốn sử dụng lại một trong số chúng để chỉnh sửa cùng một tệp nhưng với phần mở rộng tệp khác.
$ hg variables
6153 vi Variables/user-extensions.js
6176 vi Variables/user-extensions.js
6178 vi Variables/user-extensions.js
6190 vi Variables/user-extensions.js
6230 hg variables
$ # Notice the difference in case with V and v is ignored
$ !6190:p
vi Variables/user-extensions.js
$ ["up-arrow"]
$ vi Variables/user-extensions.[now change .js to .html]
Tôi cũng xác định hga
("Lịch sử Grep All") để tìm kiếm toàn bộ lịch sử của mình:
$ alias hga
alias hga='history | grep -i'
nhưng tôi không sử dụng nó nhiều vì lịch sử của tôi (cố ý) rất lớn và tôi nhận được quá nhiều đầu ra mà sau đó ảnh hưởng đến việc cuộn lại các trang thông qua trong thiết bị đầu cuối của tôi.