![是否可以将命令历史记录从一个系统传输到另一个系统?](https://linux22.com/image/4446/%E6%98%AF%E5%90%A6%E5%8F%AF%E4%BB%A5%E5%B0%86%E5%91%BD%E4%BB%A4%E5%8E%86%E5%8F%B2%E8%AE%B0%E5%BD%95%E4%BB%8E%E4%B8%80%E4%B8%AA%E7%B3%BB%E7%BB%9F%E4%BC%A0%E8%BE%93%E5%88%B0%E5%8F%A6%E4%B8%80%E4%B8%AA%E7%B3%BB%E7%BB%9F%EF%BC%9F.png)
我要将所有数据转移到新电脑上。是否可以将以前Linux的命令历史记录也转移到新系统上?这样,当我键入命令时history
,我得到的结果与在旧系统上得到的结果相同。
答案1
如果您使用的是 Bash,那么历史记录将保存在.bash_history
您的主目录中的文件 中。
该文件可以从一个系统复制到另一个系统,它只是一个文本文件。
例子
$ tail -4 ~/.bash_history
#1385239516
alias|grep cdc
#1385240451
exit
该文件充满了包含时间戳的行,后跟在该时间戳运行的命令。
答案2
如果您也传输主目录内容,那么可以。例如,在 bash 中它是 /home/user/.bash_history。
答案3
供 ZSH 用户参考,等效文件是~/.zsh_history
(在 macOS 13 上尝试过)
~/code/workplace zsh --version
zsh 5.9 (x86_64-apple-darwin22.0)
~/code/workplace
~/code/workplace head -n 5 ~/.zsh_history
: 1684505621:0;git
: 1684505621:0;git
: 1684505621:0;exit
: 1684505621:0;exit
: 1684492177:0;vi ~/.zshrc