如何在登录时运行命令并使其显示在控制台中?
例如,我登录时运行tmux attach -d。 .bashrc,.profile之类的东西似乎在后台运行它?我想在登录后立即看到在终端中运行的操作。我尝试在运行命令的.ssh中将command =“echo 1”条目添加到authorized_keys中,并将我注销,这不是我想要的。如何在登录时运行命令并使其显示在控制台中?
要运行的东西开始登录shell运行时,马上为.bashrc
部分,把这些作为最后一个行:
if shopt -q login_shell; then
exec tmux attach -d
# run exit if you want to be logged out if the exec fails, otherwise omit
exit
fi
然而,这将意味着你将不会被倒入一个实际bash
壳,并且当tmux
退出时,您将被注销。
谢谢,但这对我不起作用,因为每次打开新shell都会执行。所以如果我在tmux中打开另一个shell,它会打开另一个tmux。 tmux中的tmux很难与 – BreezyChick89 2014-09-29 17:24:10
一起工作我更新了检查[登录shell](http://unix.stackexchange.com/a/26782)的答案,因此后续的非登录shell将不会运行该命令。 – zerodiff 2014-09-29 17:32:56
如果[[-o login]];结束了使用这个 ;然后 tmux attach -d fi – BreezyChick89 2014-09-30 18:33:34
你试过 1>/dev/tty并将其放入你的〜/ .bashrc或〜/ .bash_profile –
2014-09-29 17:08:23