Я создал функцию в своем файле bashrc, чтобы при подключении к чему-либо по ssh автоматически открывался сеанс tmux.
function ssht () {
/usr/bin/ssh $@ -t 'tmux a || tmux || /bin/bash'
}
Это отлично работает, но я не хочу использовать ssht, я хочу просто использовать ssh. Когда я меняю функцию с ssht на ssh, tmux не открывается, но успешно выполняет ssh на машине.
Я предполагаю, что это не работает, потому что, когда я вызываю ssh, он игнорирует функцию в файле bashrc и вместо этого запускает ssh.
Есть ли способ просто использовать "ssh" вместо "ssht"
Сделав функцию ssh для запуска чего-либо при входе в систему, как вы, вы можете сделать следующее:
function ssht () {
\ssh $@ -t 'tmux a || tmux || /bin/bash'
}
alias ssh=ssht
\
перед ssh временно отключает псевдоним.ssht
функция остается прежней, но мы добавляем псевдоним к ssh, указывающий на нее.В качестве альтернативы вы можете использовать встроенный способ SSH, добавив Command="tmux"
перед вашим открытым ключом в authorized_keys
файл. Его можно использовать следующим образом:
command="echo howdy" ssh-rsa AAAAB3...