Trong Bash, thỉnh thoảng tôi sẽ gõ vào một danh sách các lệnh và nhấn Entervà chỉ sau đó nhận ra rằng có một lỗi với một số lệnh ở gần cuối danh sách. Tôi biết rằng nếu tôi nhấn Ctrl+ Cnó sẽ chấm dứt lệnh hiện đang chạy và hủy phần còn lại của danh sách. Có cách nào để hủy phần còn lại của danh sách mà không chấm dứt lệnh hiện đang chạy không?
Ví dụ: giả sử tôi đã gõ một cái gì đó như
foo; bar
hoặc là
foo && bar
trong đó foomột lệnh chạy dài mà rất quan trọng là không làm gián đoạn và barthực hiện một cái gì đó không thể đảo ngược và không mong muốn (nói, shutdown -h nowhoặc rm -rf /). Trong khi foovẫn đang chạy, có một cách chung để nói với vỏ để foohoàn thành nhưng không chạy barsau đó? (Vâng, tôi có thể thay đổi các điều khoản trên barđể nó không thực thi, nhưng đó không phải là đặc biệt tiện lợi nếu barlà một cái gì đó giống như rmlà tôi muốn sử dụng trong khi chờ đợi, và cũng không nó sẽ làm việc nếu tôi không làm riêng barhoặc nếu barlà một dựng sẵn.)
barlệnh cuối cùng thànhsome_command:^bar^some_commandtrước khi được thực thi.