Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: Какой командой можно распечатать класс символов?  (Прочитано 583 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Cxms

  • Автор темы
  • Активист
  • *
  • Сообщений: 407
    • Просмотр профиля
Какой командой можно распечатать (вывести на stdout) класс символов?

Например [:alpha:] [:cntrl:] или [:punct:]

Оффлайн Azure

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 6017
  • Windows10, i3wm on Debian9, Manjaro20.0
    • Просмотр профиля
Вывести все символы и отобрать нужные:
Код: (bash) [Выделить]
for j in {{0..9},{A..F}}{{0..9},{A..F}}{{0..9},{A..F}}; do printf '%s: %b\n' $j \\u$j ; done | grep -a "[[:punct:]]$"
В Линукс можно сделать ВСЁ что угодно, достаточно знать КАК !

Оффлайн Cxms

  • Автор темы
  • Активист
  • *
  • Сообщений: 407
    • Просмотр профиля
Отлично, спасибо, но не пойму только как работает строка:
do printf '%s: %b\n' $j \\u$j

Оффлайн alsoijw

  • Старожил
  • *
  • Сообщений: 4062
  • Fedora 25 GNOME 3 amd64
    • Просмотр профиля
Мало видеть нам начало - надо видеть и конец. Если видишь ты создание - значит где-то есть ТВОРЕЦ
Многие жалуются: геометрия в жизни не пригодилась. Ямб от хорея им приходится отличать ежедневно?

Оффлайн Azure

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 6017
  • Windows10, i3wm on Debian9, Manjaro20.0
    • Просмотр профиля
как работает строка:do printf '%s: %b\n' $j \\u$j
Как расписано в строке формата: построчно (\n) выводит шестнадцатиричный код (генерируемый {{0..9},{A..F}}{{0..9},{A..F}}{{0..9},{A..F}}) с двоеточием и пробелом (строка %s + ':' +' ') и сам символ, преобразованный из кода (%b).
В Линукс можно сделать ВСЁ что угодно, достаточно знать КАК !

Оффлайн Cxms

  • Автор темы
  • Активист
  • *
  • Сообщений: 407
    • Просмотр профиля
То есть пепеменные $j \\u$j после ковычек printf
это аргументы для printf которые подставляются на место '%s: %b\n' ?

Оффлайн Azure

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 6017
  • Windows10, i3wm on Debian9, Manjaro20.0
    • Просмотр профиля
Всё верно. Синтаксис: printf формат аргументы
В Линукс можно сделать ВСЁ что угодно, достаточно знать КАК !

Оффлайн alsoijw

  • Старожил
  • *
  • Сообщений: 4062
  • Fedora 25 GNOME 3 amd64
    • Просмотр профиля
<Fryvrvywr>, кажется я давал тебе ссылку.
Мало видеть нам начало - надо видеть и конец. Если видишь ты создание - значит где-то есть ТВОРЕЦ
Многие жалуются: геометрия в жизни не пригодилась. Ямб от хорея им приходится отличать ежедневно?

 

Страница сгенерирована за 0.078 секунд. Запросов: 23.