Picocom - Как прочитать Hex Bytes

Очень упрощенная версия будет выглядеть примерно так:

2 строки в config. php :

cat config.php
$variable1 = 'foo with bar';
$variable1 = 'foo2 with bar2';

Установите Bash $ variable1 на последний соответствующий экземпляр $ variable1 в config.php , на всякий случай, если он был сброшен. Если вы хотите изменить его на первое совпадение, просто измените tail -1 на head -1 в следующем коде:

variable1="$(grep -oE '\$variable1 = .*;' config.php | tail -1 | sed 's/$variable1 = //g;s/;//g')"

Подтвердите переменную Bash через echo :

echo "$variable1"
'foo2 with bar2'

Обратите внимание, что это в основном работает для строк. Есть много типов переменных PHP, которые нельзя напрямую преобразовать в переменные Bash. Приведенный выше код получит последнюю $ variable1 , указанную в config.php . Как я уже сказал, если эта переменная была установлена ​​несколько раз, вы можете установить первое или последнее значение, переключив head или tail в команде Bash, которая устанавливает переменную.

1
13.07.2018, 02:30
2 ответа

Вы действительно написали '???hex'? если так, то именно поэтому это не сработало.

Однако наиболее логичным ответом будет то, что вы имеете в виду множество вариантов сопоставления, существующих в picocom. Ваша линия и так в порядке. Я думаю, что ваша версия picocom слишком старая, чтобы иметь доступ к этим функциям.

Например, у меня есть версия 1.7 на raspberry pi, и она также не работает с этими параметрами, однако использование версии 3.1, которая является последней на данный момент, работает нормально.

1
28.01.2020, 00:32

???не означает буквально. Предложение The "to hex" mappings (???hex) replace the respective characters with their hexadecimal representation (in square brackets), like this:на странице руководства относится к

       • spchex (map special chars (< 0x20 || 0x7f), excl.  CR, LF, and TAB to hex)

       • tabhex (map TAB to hex)

       • crhex (map CR to hex)

       • lfhex (map LF to hex)

       • 8bithex (map chars with 8th-bit set to hex)

       • nrmhex (map normal ascii chars (0x20 <= c < 0x7f) to hex)

Я думаю, что вы хотите запустить

picocom --imap 8bithex -b 19200 /dev/ttyS0
1
08.04.2020, 14:11

Теги

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