Ошибка функции SSH в ZSH

Ошибка функции SSH в ZSH

В моем файле есть следующая функция zshrc:

fssh() {
    ssh -NfL $1:localhost:$1 graphite
}

Когда я звоню fssh 8443, я получаю

Bad local forwarding specification '8443ocalhost:8443'

Как я могу это исправить?

решение1

zshпытается интерпретировать :как специальный символ после вашей переменной. В частности, он пытается сделать его строчным. В zsh :lи :uиспользуются для получения строчных или заглавных версий вашей переменной. Поэтому ваша функция указывает сделать $1строчные с помощью $1:l.

Правильное определение границ расширения параметров должно решить проблему, поэтому попробуйте${1}:localhost:${1}

Удачи.

Связанный контент