如何在 Linux 中以私有模式启动 Fish Shell

鱼壳 默认情况下附带许多很酷的功能。 一个这样的特点是 Private Mode. 在这个简短的指南中,我们将看到如何在 Linux 中以私有模式启动 Fish shell,以避免将命令存储在历史文件中。 换句话说,我们将看到如何在 Fish shell 中启用隐身模式。 如您所知,在隐身模式下不会登录任何内容。

外壳历史文件

每个 Unix shell 都能够记录您在终端中运行的所有命令。 取决于您使用的外壳,命令存储在不同位置的文本文件中。 在 Bash shell 中,所有命令都记录到 ~/.bash_history 默认文件。 在 Fish shell 中,命令条目存储在 ~/.local/share/fish/fish_history 文件。 在 Zsh shell 中,命令保存在 ~/.zsh_history 或用户配置的任何其他文件。

现在的问题是,如果您根本不想记录命令历史怎么办? 可能您正在使用共享系统,并且不想将您运行的命令保存在历史文件中。 如果您想停止在历史文件中记录命令,请按照以下方法操作。

在 Linux 中以私有模式启动 Fish Shell

从3.0版本开始,鱼壳自带 --private 可用于在私有或隐身模式下启动 fish shell 的标志。

要在 fish shell 中启用隐身模式,只需使用以下命令启动它 --private 标志如下:

$ fish --private

当您在私有模式下启动 fish 时,它将显示一个通知,如以下输出所示:

Welcome to fish, the friendly interactive shell
Type `help` for instructions on how to use fish.
fish is running in private mode, history will not be persisted.
在 Linux 中以私有模式启动 Fish Shell

现在你在一个私人鱼会话中! 在私有模式下,旧的历史记录不可用,您执行的任何交互式命令都不会附加到全局历史记录文件中,这对于避免无意泄露个人信息(例如截屏视频)和处理敏感信息以防止其被泄露都很有用持久化到磁盘。

请注意 Fish shell 不附加带有空格的命令 默认情况下进入其历史文件。 这 --private flag 使这项工作更加容易。 只要用户处于私有模式,它就不会记录命令历史。 要返回正常模式,请键入 exit 然后再次启动鱼壳 --private 基佬

有关更多详细信息,请参阅 fish 手册页:

man fish

您现在知道什么是fish shell 中的私有模式以及如何在私有或隐身模式下启动fish shell 以防止命令被记录到历史文件中。 希望这很有用。

相关阅读:

  • 在 Fish Shell 中启用历史命令的时间戳