Как скопировать файл в буфер обмена при запуске SSH на Linux?
Например, я использую Mac и ssh'ed на сервер Linux (Ubuntu, без X-сессии) и мне нужно перенести SSL-сертификат с одного сервера на другой (также консоль Linux, Ubuntu, без X-сессии), как мне скопировать сертификат с буфером обмена, это возможно?
Я знаю, как копировать, используя кошку и мышь:) Например, сертификат не может быть напечатан в консоли или слишком большой
3 ответа
Чтобы скопировать файл с одного сервера на другой, я обычно использую scp
, Это программа для копирования файлов через SSH. Вы можете либо скопировать файл из первой Ubuntu на ваш Mac, а затем с вашего Mac на второй Ubuntu, либо, если нет брандмауэров, и вы можете выполнить scp напрямую из первой Ubuntu во вторую. Синтаксис scp localpathsrc login@server:remotepathdst
или же scp login@server:remotepathsrc localpathdst
(я думаю, что с новейшей версией scp вы также можете использовать scp login1@server1:path1src login2@server2:path2dst, но у вас его не будет ни на Mac, ни в Ubuntu 12.04). В Ubuntu у вас должен быть scp, он входит в пакет openssh-client, но, возможно, у вас установлен только openssh-server. Боюсь, на Mac я не знаю...
Не устанавливая что-либо вообще, вы также сможете делать это с терминала на вашем Mac
ssh login1@server1 "cat path" | ssh login2@server2 "cat > path2"
но я не помню, работает ли это, когда вам нужно вводить пароли.
X Toolkit
Я думаю, что вам просто нужны некоторые инструменты из стандартного X Toolkit: xclipboard
; xclip
; xcutsel
; xclip-copyfile
; xclip-cutfile
; xclip-pastefile
; так далее..
ИМЯ xclip-copyfile, xclip-cutfile, xclip-pastefile - копировать и перемещать файлы через буфер обмена X. Синтез xclip-copyfile [-p] FILES... xclip-cutfile [-p] FILES... xclip-pastefile ОПИСАНИЕ xclip-copyfile копирует файлы в буфер обмена X, возвращаясь в каталоги. xclip-cutfile копирует файлы, но затем удаляет их. -p сохранить формирование пути xclip-pastefile вставляет файлы из буфера обмена. ПРИМЕРЫ Копирование файла на удаленный хост [maggie.lkpg.cendio.se ~]$ echo "Файл, созданный в ${HOSTNAME}" > file1 [maggie.lkpg.cendio.se ~]$ xclip-copyfile file1 [sofie.homeip.net ~/doc]$ xclip-pastefile file1 [sofie.homeip.net ~/doc]$ cat file1 Файл, созданный в maggie.lkpg.cendio. se Копирование всей древовидной структуры [sofie.homeip.net ~]$ xclip-copyfile doc [maggie.lkpg.cendio.se ~/tmp]$ xclip-pastefile doc/ doc/letter-mom-april.txt doc/file1 doc/letter-dad-march.txt Копирование файлов с сохраненной информацией о пути [maggie.lkpg.cendio.se ~]$ xclip-copyfile -p /etc/sysconfig/grub tar: удаление ведущего `/'из имен членов [sofie.homeip.net ~/tmp]$ xclip-pastefile etc/sysconfig/grub [sofie.homeip.net ~/tmp]$ ls etc/sysconfig/grub etc/sysconfig/grub Перемещение файлов [sofie.homeip.net ~]$ ls letter-brother-may.txt letter-brother-may.txt [sofie.homeip.net ~]$ xclip-cutfile letter-brother-may.txt [sofie.homeip.net ~]$ ls letter-brother-may.txt ls: не может получить доступ к letter-brother-may.txt: нет такого файла или каталога [sofie.homeip.net ~]$ cd doc [sofie.homeip.net ~/doc]$ xclip-pastefile letter-brother-may.txt АВТОРЫ Эта страница руководства была написана Максимилианом Гассом для проекта Debian. Конечно, это может быть использовано для всего остального.
Я не могу серьезно поверить, что вы используете консоль Linux... у вас есть мышь? Если так:
используйте команду
cat myfile
показать весь файл на вашем терминале. При необходимости увеличьте размер терминала, чтобы показать весь файл. Если это просто сертификат, это не должно быть проблемой.Поместите указатель мыши в начало файла, показанного в вашем терминале.
Удерживайте левую кнопку
Переместите мышь на другой конец файла, чтобы он был выделен
Отпустите кнопку мыши. Содержимое файла должно оставаться выделенным. Это копирует выделенный текст в буфер обмена X (который отличается от того, который вы используете, когда вы нажимаете Ctrl-C/Ctrl-V в некоторых приложениях).
Получите доступ к вашему другому серверу.
Откройте редактор файлов (если вы используете
vi
переведите его в режим вставки)Нажмите среднюю кнопку мыши, чтобы вставить содержимое.
Если вы не используете мышь, возможно, у вас не установлены библиотеки X. использование scp
вместо буфера обмена X.
Предполагается, что вы на самом деле вошли в сеанс X. Учитывая неопределенность вашего вопроса, вы можете использовать компьютер под управлением Windows и использовать замазку для доступа к двум серверам Linux. Если это так, используйте правую кнопку, чтобы вставить.