我想在登录时自动在远程 shell 中定义 bash 函数和别名。我无法将定义放入 .profile 或类似文件中,因为我登录的用户通常与使用相同系统的其他人共享,我无法控制这一点。我想做的是在远程进程中执行一些 bash 函数定义,然后继续作为登录 shell。我试过这个,但没有用:
cat ~/.profile - | ssh -tt user@host bash -l
有任何想法吗?
答案1
如果您有权限,您还可以修改目标服务器上的 .bashrc 或 .bash_profile 来执行“whoami”检查,并且仅在与您的用户名匹配时运行这些别名和功能设置。
就我个人而言,我会选择 Expect 选项,但如果您还不熟悉 Expect,那么这可能会让您感到非常沮丧。