Super_L
X keysym. Tmux работает в терминале. Это до Вашего эмулятора терминала для преобразования keysym в последовательность символов. Таким образом, необходимо было бы настроить и эмулятор терминала и tmux.
Смотря на tmux документацию, префикс может только известное ключевое имя с дополнительным модификатором. Таким образом, можно установить tmux префикс на сочетание клавиш, Вы не используете, говорите M-F12
, и заставьте свой терминал отправлять последовательность символов за M-F12
когда Вы нажимаете Super_L
. С немного большим количеством работы Вы могли использовать ключ, который, вероятно, не имеет Ваша клавиатура (tmux, принимает F13
через F20
как ключ называет, но они должны быть объявлены в terminfo).
На стороне эмулятора терминала необходимо было бы устроить Super_L
генерировать сочетание клавиш \e\e[24~
(для M-F12
) или \e[34~
(для F20
) (где \e
символ ESC). Как сделать, это зависит от эмулятора терминала (и некоторые не достаточно настраиваются, чтобы сделать это). С xterm это сделано через X ресурсов:
! Make Super_L act as Meta+F12
XTerm.VT100.translations: #override \
<Key>Super_L: string("\033\033[24~")
Можно наткнуться на препятствие это Super_L
обычно модификатор, и модифицирующие клавиши не всегда работают, когда немодификатор требуется. Если Вы не хотите Super_L
чтобы быть модификатором, можно устранить его модификатор или (менее смутно) использовать другой keysym для физического ключа. Это может быть сделано через xmodmap (старомодный и простой понять) через xkb (современный, плохо зарегистрированный, мощный и сложный путь), или возможно через инструмент конфигурирования GUI Вашей настольной среды.
Способ сделать, который должен использовать обычный файл или именованный канал.
Почему бы не scp
в исходном терминале во-первых (даже в фоновом режиме)?
Если хост-система использует proc
, во втором терминале делают cd -P /proc/PID/cwd
затем сделайте Ваш scp
от .
(где PID является PID оболочки, которая находится в cwd/pwd, что Вы интересуетесь).
Если Ваш терминал поддерживает zmodem протокол (Konsole KDE делает), и удаленной системе установили lrzsz пакет, можно инициировать прямую передачу через терминальное использование:
sz foo.txt
Подсказки Konsole необходимо было сохранить файл и это - это. Экран GNU, по-видимому, имеет поддержку zmodem также.
screen
а также rz
/sz
на Вашей локальной машине.
– Janus
06.12.2010, 05:54
Если у Вас есть X активных передач (ssh -X
, ForwardX11
в ~/.ssh/config
, или любой другой метод), можно управлять X выборами от оболочки:
printf %s "$PWD" | xsel -i
В зависимости от Вашего эмулятора терминала можно хотеть установить БУФЕР ОБМЕНА (xsel -bi
) вместо ОСНОВНОГО выбора (xsel -p
). Можно также использовать ВТОРИЧНЫЙ выбор (xsel -si
).
Можно использовать среднюю кнопку мыши для вставки ОСНОВНОГО выбора, или (в некоторых терминалах) БУФЕР ОБМЕНА с Ctrl+V, или можно использовать xsel
(или xsel -s
или xsel -b
) в оболочке с другой стороны.
Существуют другие возможные рабочие процессы, включая, например, обратное соединение SSH, ~
Escape или zssh. См., что SSH легко копирует файл в локальную систему, Загрузка файл по активной сессии SSH. Вы могли также смонтировать удаленную файловую систему по sshfs.
xprop
наполните его в некотором свойстве на корневом окне, но xsel/xclip
выборы имеют больше смысла.
– ephemient
06.12.2010, 04:54
Если у Вас есть ssh сервер, работающий на Вашей домашней машине, можно сделать реверс scp
:
[student@university ~/rather/long/path/to/interesting/file]$ scp ./secrect.txt user@myhomesystem.net:~