如何按新近度对 shell 历史记录进行排序并删除重复项?

如何按新近度对 shell 历史记录进行排序并删除重复项?

我真的不知道 awk,但到目前为止我的尝试

history | awk '!x[<everything except first column which is the order>]++' | sort -r

答案1

需要用awk吗?

history | tail -n 50 | sort -r -n | cut -d " " -f4- | sort -u

基本上

  1. 使用数字前缀对历史记录进行反向排序
  2. 删除空格
  3. 删除前导数字
  4. 删除重复项

或者,您可以基于此执行以下操作之前回答过的问题

history | sort -rn | sed -e 's/ *[0-9][0-9]* *//' | uniq | less

相关内容