Jus*_*tin 4 unix bash shell history zsh
我的~/.zsh_history节目:
: 1449561637:0;echo "foobar"
Run Code Online (Sandbox Code Playgroud)
我猜是这样,unix timestamp : exit code ; command但是时间戳和第一个冒号之前的空间呢?
有官方规范吗?
正如评论中已经指出的,历史文件的格式取决于 shell,有时甚至取决于 shell 的特定设置。
在您的情况下,您正在使用启用zsh的EXTENDED_HISTORY选项(通过显式设置或使用csh-emulation)。根据ZSH 手册,历史条目的格式EXTENDED_HISTORY如下:
: <beginning time>:<elapsed seconds>;<command>
Run Code Online (Sandbox Code Playgroud)
所以时间戳之前的空格只是格式的一部分,第二个冒号和分号之间的数字实际上是命令所用的时间,而不是退出代码。
注意:如果设置了该选项,<elapsed seconds>则将始终为0,INC_APPEND_HISTORY因为在输入命令后,历史条目会立即写入文件。如果您想记录持续时间并在 shell 会话之间继续共享历史记录,您可能需要INC_APPEND_HISTORY_TIME改用。这仅在命令完成后写入历史文件。
| 归档时间: |
|
| 查看次数: |
422 次 |
| 最近记录: |