Как cat обрабатывает растровые изображения?

Вы установили MariaDB вместо MySQL и пытаетесь установить версию пакета разработки для MySQL. Это приводит к конфликту зависимостей. Эквивалентный пакет MariaDB называется немного по-другому :это libmariadb-dev.

libmariadb-devтакже имеет Provides: libmysqlclient-devв своих метаданных пакета, поэтому он будет удовлетворять любым зависимостям для libmysqlclient-dev.

Так что попробуй:

sudo apt-get install python3.6-dev libmariadb-dev

Чтобы убрать предупреждение о репозитории Skype, проверьте файл /etc/apt/sources.listи все файлы в каталоге /etc/apt/sources.list.d/и убедитесь, что репозиторий Skype упоминается только один раз.

В более новых пакетах Skype файл конфигурации репозитория помещается в каталог /etc/apt/sources.list.d/, а в старых — нет, поэтому вы, вероятно, добавили репозиторий Skype вручную. Теперь вы можете удалить ручное добавление.

-1
02.01.2020, 03:44
1 ответ

Он записывает их в стандартный вывод.

То, что происходит дальше, зависит от стандартного вывода. Если это терминальное устройство, то поведение определяется терминалом, и не имеет ничего общего с cat.

Когда дело доходит до поведения терминала, важны несколько вещей:

  • ASCII представляет собой 7-битную -кодировку символов. Байт длиной 8 -бит может представлять в два раза больше вещей, чем в наборе символов ASCII. То, что означают остальные 128 значений, было предметом множества споров в 1970-х, 1980-х и 1990-х годах. У нас были одиночные -байтовые кодировки, двойные -байтовые кодировки, кодовые страницы, ISO 8859 и части самого ASCII, которые должны были быть вариантами (или которые были изменены в более поздних редакциях стандарта ). И это даже не говоря о сложностях ISO 2022/ECMA -35 и переключаемых наборах символов.

    Существует миф о существовании «простого ASCII-мира». На самом деле это не так уже почти полвека. В настоящее время вы почти никогда не окажетесь в ситуации, когда вы смотрите только на настоящий ASCII.

  • В наши днитерминал эмулятор , скорее всего, использует UTF -8, переменную -кодировку длины Unicode, где каждая кодовая точка представляет собой один или несколько байтов. Это стало обычным явлением лет 15 назад.
  • Даже если вы работаете только с ASCII, некоторые символы являются печатаемыми символами, которые терминал отображает с помощью печатной графики, а другие являются управляющими символами, которые иметь различные непечатающие -эффекты (, в том числе, в случае & #x2400;, никакого эффекта вообще ). Юникод более сложен, но основная идея о том, что на самом деле отображаются только некоторые кодовые точки, по-прежнему примерно верна.
  • Терминалы декодируют свои полученные потоки байтов в символы в соответствии с тем, какую кодировку символов они используют в настоящее время . Это значительно варьируется от терминала к терминалу. Эмуляторы терминала обычно имеют некоторый пункт меню, в котором это декодирование может быть изменено пользователем на лету по его желанию.

В хваткой руке смотреть на растровое изображение, распечатывая его на терминале с помощью cat, — это безумие. Познайте радость hexdump, илиod. Ни один catвообще не должен участвовать .

6
28.04.2021, 23:26

Теги

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