Tôi cần xóa tất cả các lệnh trong lịch sử của mình khớp với một chuỗi. Tôi đã thử:
$ history | grep searchstring | cut -d" " -f2 | history -d
-bash: history: -d: option requires an argument
$ history | grep searchstring | cut -d" " -f2 | xargs history -d
xargs: history: No such file or directory
$ temparg() { while read i; do "$@" "$i"; done }
$ history | grep searchstring | cut -d" " -f2 | temparg history -d
(no error, but nothing is deleted)
Cách đúng đắn để làm điều này là gì?
history -d X
. Tôi bắt gặp câu hỏi này vì tôi vừa mới làm xonghistory | grep search_str | sort -nr | awk '{print $1}' | while read i; do history -d $i; done
. Không có lỗi, nhưng không có gì bị xóa. Bất cứ ai cũng có thể giải thích tại sao?