web-dev-qa-db-ja.com

ssh経由でbash履歴を読み取ることができません

これは機能します:

server:~> history | tail -100   | grep etc
  908  2018-01-17 08:53:43 cd /etc/Apache2/vhosts.d/default.d/
  ....
  ....

しかし、これはしません:

ssh root@server "history | tail -100 | grep etc"

どうして?

2
guettli

どうやらbashは、非対話的に実行された場合、履歴処理を有効にしません。

インタラクティブオプションの-iでbashを開始することで、これを回避できます。

ssh root@server "echo history | bash -i | tail -100 | grep etc"
6
wurtel