#!/bin/bash
read LOWERPORT UPPERPORT < /proc/sys/net/ipv4/ip_local_port_range
while :
do
PORT="`shuf -i $LOWERPORT-$UPPERPORT -n 1`"
ss -lpn | grep -q ":$PORT " || break
done
echo $PORT
Credits to Chris Down
Добавьте set-option -g xterm-keys on
к tmux.conf
или каждый раз вводите :set-option -g xterm-keys on
внутри tmux.
Escape указывает на мета только для комбинаций вида Meta +c , где c — печатный или управляющий символ. Большинство терминалов не добавляют escape-символ перед escape-последовательностью.так что вы можете ввести два последовательных escape-символа, чтобы активировать привязку Escape в приложениях, и чтобы escape-последовательности не содержали управляющие символы после начального escape-символа.
Чтобы увидеть, какую escape-последовательность отправляет ваш терминал при нажатии клавиши, нажмите Ctrl + V , затем это нажатие клавиши, например. Ctrl + V , затем Meta + Влево , в командной строке или в cat
. В терминале в режиме приготовления и в таких приложениях, как оболочки и Vi, Ctrl + V означает «вставить следующий символ буквально, даже если это управляющий символ», таким образом, Ctrl + V , за которым следует нажатие клавиши, которое отправляет escape-последовательность, приводит к вставке этой escape-последовательности (, предполагая, что escape-последовательность не содержит никаких управляющих символов, кроме начального escape-символа ). ].
Вероятно, вы увидите что-то подобное:
^[O1D
означает, что Meta + Left отправляет escape-символ, за которым следуют три символа O1D
. Это означает, что вам нужна привязка
bindkey "^[O1D" backward-word