Я использую Mac 10.9.5 и оболочку bash. В нашей среде мы должны через прокси (машину CentOS) правильно подключиться к SSH на машине назначения (другую машину CentOS). То, что я хотел бы сделать, это создать ярлык, чтобы я мог быстро scp файлы на целевой сервер, что-то вроде

scp localfile.txt davea@server:/home/davea

Но сейчас я должен сделать несколько команд для передачи файла ...

scp localfile.txt davea@proxy:/home/davea
ssh davea@proxy
scp localfile.txt davea@server:/home/davea

Можно ли скомпилировать вышесказанное в одну строку?

2 ответа2

1

Как насчет функции в вас .bash_profile

scps () {
    if [ -f $1 ] ; then
        scp $1 davea@proxy:/home/davea && ssh davea@proxy && scp $1 davea@server:/home/davea
    else
        echo "'$1' is not a valid file!"
    fi
}

Затем вы можете использовать scps filename чтобы скопировать filename на davea@server:/home/davea .

0

Рассмотрите возможность использования rsync для автоматического копирования файлов с прокси в место назначения:

rsync local-file user@remote-host:remote-file

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .