Мені потрібно видалити всі команди в моїй історії, що відповідають рядку. Я спробував:
$ 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)
Який правильний спосіб це зробити?
history -d X
. Я натрапив на це питання, тому що я щойно зробивhistory | grep search_str | sort -nr | awk '{print $1}' | while read i; do history -d $i; done
. Немає помилок, але нічого не видалено. Хтось може пояснити, чому?