Расширения глобусов сортируются, что означает, что вы можете сделать что-то вроде:
state=0
for d in *; do
case $d in "sd1") state=1;; "sd2") break;; esac
if [ 1 -eq "$state" ]; then
( cd "$d" && dostuff )
fi
done
Здесь я предполагаю, что sd1
и sd2
не являются реальными примерами и что диапазон не может быть описан тривиальными числовыми диапазонами. Если бы они могли, я бы использовал решение Ромео Нинова .
Расширения фигурных скобок очень удобны, но, к сожалению, многие оболочки POSIX их не имеют, так как они не являются требованием POSIX.
Sep 8 06:28:55 boxhost sshd[29013]: Invalid user teamspeak3 from 134.209.108.13 port 57936
IP-адрес 134.209.108.13 — это IP-адрес TCP-соединения, полученный демоном ssh. Демон ssh не "проверяет" его в каком-либо другом отношении, кроме того, что успешное TCP-соединение может быть установлено с/с этого IP-адреса, т. е. шаги SYN -ACK -ACK были выполнены на уровне TCP/IP. и по этому IP-соединению было обменено достаточно сообщений протокола ssh для согласования шифра и отправки "teamspeak3" в качестве имени для входа...
Как только IP-соединение существует, ваша система может выполнять обратный поиск DNS, который преобразует этот IP-адрес в имя хоста и затем регистрируется, но я не думаю, что sshd проверяет более строго и, например, если прямая запись для имя хоста, возвращенное обратным поиском, существует и совпадает.