2016-02-29 7 views
1

Вот последний из моего терминала.Преобразование символов Bash

              E┬$?: N⎺ ⎽┤c▒ °☃┌e ⎺⎼ d☃⎼ec├⎺⎼≤ 
┴▒±⎼▒┼├@└e⎽⎺⎽:·/de┴e┌⎺⎻└e┼├/⎽⎻┌☃├├e⎼$ └▒┼ └▒⎼▒├▒⎺┼ 
N⎺ └▒┼┤▒┌ e┼├⎼≤ °⎺⎼ └▒⎼▒├▒⎺┼ 
See '└▒┼ 7 ┤┼d⎺c┤└e┼├ed' °⎺⎼ ▒e┌⎻ ┬▒e┼ └▒┼┤▒┌ ⎻▒±e⎽ ▒⎼e ┼⎺├ ▒┴▒☃┌▒b┌e↓ 
┴▒±⎼▒┼├@└e⎽⎺⎽:·/de┴e┌⎺⎻└e┼├/⎽⎻┌☃├├e⎼$ ⎻☃┼± ±⎺±⎺┌e↓c⎺└ 
PING ±⎺±⎺┌e↓c⎺└ (216↓58↓217↓36) 56(84) b≤├e⎽ ⎺° d▒├▒↓ 
64 b≤├e⎽ °⎼⎺└ de┼▮3⎽1▮↑☃┼↑°36↓1e1▮▮↓┼e├ (216↓58↓217↓36): ☃c└⎻_⎽e─=1 ├├┌=63 ├☃└e=29↓▮ └⎽ 
64 b≤├e⎽ °⎼⎺└ de┼▮3⎽1▮↑☃┼↑°36↓1e1▮▮↓┼e├ (216↓58↓217↓36): ☃c└⎻_⎽e─=2 ├├┌=63 ├☃└e=32↓4 └⎽ 
64 b≤├e⎽ °⎼⎺└ de┼▮3⎽1▮↑☃┼↑°36↓1e1▮▮↓┼e├ (216↓58↓217↓36): ☃c└⎻_⎽e─=3 ├├┌=63 ├☃└e=27↓4 └⎽ 
64 b≤├e⎽ °⎼⎺└ de┼▮3⎽1▮↑☃┼↑°36↓1e1▮▮↓┼e├ (216↓58↓217↓36): ☃c└⎻_⎽e─=4 ├├┌=63 ├☃└e=25↓9 └⎽ 
^C 
↑↑↑ ±⎺±⎺┌e↓c⎺└ ⎻☃┼± ⎽├▒├☃⎽├☃c⎽ ↑↑↑ 
4 ⎻▒c┐e├⎽ ├⎼▒┼⎽└☃├├ed← 4 ⎼ece☃┴ed← ▮% ⎻▒c┐e├ ┌⎺⎽⎽← ├☃└e 32▮3└⎽ 
⎼├├ └☃┼/▒┴±/└▒│/└de┴ = 25↓927/28↓721/32↓426/2↓415 └⎽ 
┴▒±⎼▒┼├@└e⎽⎺⎽:·/de┴e┌⎺⎻└e┼├/⎽⎻┌☃├├e⎼$ E┴e⎼≤├▒☃┼± ☃⎽ ☃┼ ▒ ┼e┬ ┌▒┼±┤▒±e 
E┴e⎼≤├▒☃┼±: c⎺└└▒┼d ┼⎺├ °⎺┤┼d 
┴▒±⎼▒┼├@└e⎽⎺⎽:·/de┴e┌⎺⎻└e┼├/⎽⎻┌☃├├e⎼$ ┌⎽ 
▒⎻⎻↓┘⎽ c⎺┼°☃± D⎺c┐e⎼°☃┌e d⎺c┐e⎼☃≥e↓⎽▒ ┼⎺de_└⎺d┤┌e⎽ ⎻▒c┐▒±e↓┘⎽⎺┼ Re▒d└e↓└d README↓└d 
┴▒±⎼▒┼├@└e⎽⎺⎽:·/de┴e┌⎺⎻└e┼├/⎽⎻┌☃├├e⎼$ 

Теперь, я знаю, что cat ИНГ двоичных файлов вызывают все виды сумасшедших вещей, чтобы случиться к терминалу. Но я никогда не спрашивал об этом раньше. Я пытаюсь выяснить, что именно приведет к трансформации этого символа.

Все работает нормально. Я не могу прочитать вывод, но команды ping производят вывод, который ведет себя так, как я ожидал. ls имеет такое же цветовое кодирование. пользовательские сценарии имеют одинаковый вывод (только что преобразованный).

Какая последовательность символов приведет к этой последовательной трансформации?

печатать reset возвращает меня в здравый смысл.

Я получаю character transformation via console codes? Если да, могу ли я подшутить над этим? (alias ls=ls #+some character transformation). Примечание. Я не хочу, чтобы у этого была возможность ls, превратившись в rm -rf или что-то еще злонамеренное.

ответ

2

Это вызвано тем, что в терминал вставляется smacs (enter_alt_charset_mode) terminfo. Он может быть переключен обратно с последовательностью terminfo (exit_alt_charset_mode).

echo "$(tput rmacs)" 
+0

СПАСИБО! Теперь у меня есть еще один способ заставить людей перестать смотреть через мое плечо. 'alias human_mode = echo '$ (tput rmacs)" ' ' alias alien_mode = echo' $ (tput smacs) "' 'alias go_away = 'alien_mode; tail -f/var/log/syslog'' –

Смежные вопросы