Название сессии хранится в tmux переменной #S
, для доступа к нему в терминале можно сделать
tmux display-message -p "#S"
Если Вы хотите использовать его в .tmux.conf
, это просто #S
. Обратите внимание что -p
опция распечатает сообщение на stdout, иначе сообщение отображено в tmux строке состояния.
Если вышеупомянутую команду называют в сессии, она возвращает название сессии. Если это называют вне какой-либо сессии, это все еще возвращает название последней все еще рабочей сессии. Я не мог найти, что команда tmux проверила, если Вы в сессии или нет, таким образом, я должен был придумать эту работу вокруг:
tmux list-sessions | sed -n '/(attached)/s/:.*//p'
tmux list-sessions
шоу все сессии, если Вы присоединяетесь, это показывает (attached)
в конце. С sed мы подавляем весь вывод (опция -n
) кроме того, где мы находим ключевое слово (attached)
, в этой строке мы срезаем everyhing после a :
, который оставляет нас с названием сессии. Это работает на меня внутри и снаружи сессии, в противоположность tmux display-message -p "#S"
.
Конечно, это работает, только если существует нет :
и нет (attached)
от имени сессии.
Как прокомментировано Chris Johnsen, способ проверить, ли Вы в tmux сессии, состоит в том, чтобы видеть, установлена ли ее переменная среды:
[[ -n "${TMUX+set}" ]] && tmux display-message -p "#S"
Первый шаг - генерировать пару двухуровневых клавиш на машине, которую вы копируете из:
ssh-keygen
, вы можете пойти по умолчанию, и убедитесь, что вы понимаете «Не предоставляем пароль для использования. Это может занять немного времени.
Второй шаг, после завершения ключевого поколения, состоит в том, чтобы скопировать открытый ключ к серверу, используя:
ssh-copy-id username@server
с соответствующим именем пользователя
и Server
. Для этого вам нужен пароль для имени пользователя
. If Имя пользователя
не имеет пароля, вы можете скопировать файл с открытым ключом через корневую учетную запись, но гораздо проще временно создать пароль для учетной записи и использования Копия-идентификатор
Третий шаг: Проверьте, работает ли установленный открытый ключ с использованием: SSH username @ server
или SCP uveryfile username @ Server: / var / tmp
Четвертый шаг: добавить Работа CRON ( CRONTAB -E
) На клиентском компьютере:
15 23 * * * scp username@server:/path/on/server/downloadfile /local/destination
17 23 * * * scp /local/source/somefile username@server:/path/on/server/uploaddirectory
, которые будут скопировать файл / PATH / ON / SERVER / DOWNEDFILE
каждый день в 21:15 Спустя и через две минуты начинает загрузку / Local / Source / quotefile
, которые следует учитывать:
учетной записи , так что это позволяет только SCP
, а не SSH
. rsync
, используя вышеуказанную пару клавиши SSH), является более эффективной.