Як я можу скопіювати та вставити текст із віддаленої версії до локальної версії?


12

Я редагую файл у vim на віддаленій машині через ssh, і хочу скопіювати текст із віддаленого файлу та вставити його в екземпляр vim, що працює на моїй локальній машині. Чи є простий спосіб це зробити? Я можу використовувати функції вибору емулятора терміналу для вибору тексту, який зараз знаходиться на екрані, але якщо мій вибір більший, ніж може вміститися на екрані, мені не пощастило.


Перевірте, чи допомагає ця відповідь .
Skippy le Grand Gourou

Відповіді:


23

Відкрийте віддалений файл у локальному сеансі vim:

  :e scp://user@host/relative/path/from/home.txt

Мені подобається. Приємно і просто.
Шев

Чудова порада! Чи можна це scp://визнати в іншому місці або це лише VIM?
Заморожене полум'я

1
@FrozenFlame: Я вважаю, що це специфічний додаток. Але я не був би здивований, якщо велика DE, на зразок KDE або Gnome, мандатувала підтримку цієї схеми у кожному додатку.
nperson325681

1
Для абсолютних шляхів::e scp://user@host//tmp/file.txt
Саймон А. Егстер

9

Якщо у вас є достатньо дозволів на віддаленій машині, ви можете додати їх

AcceptEnv WINDOWID

до / etc / ssh / sshd_config та перезапустити sshd з

sudo /etc/init.d/ssh restart

Потім на локальній машині додайте

ForwardX11 yes
SendEnv WINDOWID

у ваш файл ~ / .ssh / config

Потім, запустивши vim-vim на віддаленій машині (наприклад, gvim -v), ви можете скопіювати та вставити в буфер обміну X. Просто візуально виберіть текст (наприклад, використовуючи V) та вставте його в *реєстр.

Редагувати

Я забув включити частину про налаштування SendEnv WINDOWIDу свій ~ / .ssh / config, тому я додав це і перемістив включення переадресації X з командного рядка (ssh -Xопція) до файлу ~ / .ssh / config ( ForwardX11 yes).


Мені потрібно було встановити пакет xauth, щоб це працювало на Debian.
лео

за допомогою цього я можу скопіювати локально та вставити віддалено. Чи є спосіб зробити і навпаки? Дякую!
Пашаліс
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.