![bash 历史记录中的行消失了:这是一个错误还是一个功能?](https://linux22.com/image/1409468/bash%20%E5%8E%86%E5%8F%B2%E8%AE%B0%E5%BD%95%E4%B8%AD%E7%9A%84%E8%A1%8C%E6%B6%88%E5%A4%B1%E4%BA%86%EF%BC%9A%E8%BF%99%E6%98%AF%E4%B8%80%E4%B8%AA%E9%94%99%E8%AF%AF%E8%BF%98%E6%98%AF%E4%B8%80%E4%B8%AA%E5%8A%9F%E8%83%BD%EF%BC%9F.png)
当我输入以空格开头的命令行时,该行不会出现在 bash 的历史记录中(使用向上箭头)。
这是 bash 的一个错误还是一个功能?
答案1
这是一个特点。
从手册页:
组织控制 用冒号分隔的值列表,控制命令如何执行 保存在历史列表中。 如果值列表包括 ignorespace,以空格字符开头的行不会被 保存在历史列表中。 ignoreups 的值会导致行 匹配前一个历史记录条目不会被保存。 值 ignoreboth 是 ignorespace 和 ignoreups 的简写。 一个值
当我输入以空格开头的命令行时,该行不会出现在 bash 的历史记录中(使用向上箭头)。
这是 bash 的一个错误还是一个功能?
这是一个特点。
从手册页:
组织控制 用冒号分隔的值列表,控制命令如何执行 保存在历史列表中。 如果值列表包括 ignorespace,以空格字符开头的行不会被 保存在历史列表中。 ignoreups 的值会导致行 匹配前一个历史记录条目不会被保存。 值 ignoreboth 是 ignorespace 和 ignoreups 的简写。 一个值