Неожиданный вопрос об ожидании/ssh

Вы можете искать строки, состоящие только из допустимых символов Base64, с правильной структурой и при необходимости отступами:

grep -E '[A-Za-z0-9+/]{4}*([A-Za-z0-9+/]{4}|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{2}==)'

Это ищет любое количество последовательностей из четырех символов Base64, за которыми следуют либо еще четыре, либо три с одним символом заполнения, либо две последовательности с двумя символами заполнения.

0
15.01.2021, 15:51
2 ответа

Ah -нужен CR, а не NL

echo -e "cat /etc/hosts\r"

(но если кто-нибудь может ответить на мой второй вопрос...)

-1
18.03.2021, 22:36

Tcl и expect ничего не делают автоматически со стандартным вводом. Его нужно активно читать:

send "echo 002-READY\r"
expect -re {\$ $}

fconfigure stdin -blocking no
while {[gets stdin line] != 0} {
    # prevent an infinite loop waiting for data on stdin
    if {$line eq ""} break

    send "$line\r"
    expect -re {\$ $}
}

# finished sending the input: now log off gracefully
send "exit\r"
expect eof

Примечание оsleep--обычно вам не нужно спать после отправки чего-либо , если у вас есть правильные expectшаблоны . Я рекомендую вам использовать expect -d program.expво время разработки скрипта, чтобы убедиться, что ваши шаблоны совпадают.

0
18.03.2021, 22:36

Теги

Похожие вопросы