这确实有效:
server:~> history | tail -100 | grep etc
908 2018-01-17 08:53:43 cd /etc/apache2/vhosts.d/default.d/
....
....
Run Code Online (Sandbox Code Playgroud)
但这不会:
ssh root@server "history | tail -100 | grep etc"
Run Code Online (Sandbox Code Playgroud)
为什么?
显然 bash 在非交互式运行时不启用历史处理。
您可以通过使用-i
for 交互选项启动 bash 来解决此问题:
ssh root@server "echo history | bash -i | tail -100 | grep etc"
Run Code Online (Sandbox Code Playgroud)