[РЕШЕНО] Символы и cut в командной строке

Автор mexx, 30 апреля 2021, 19:58:07

« назад - далее »

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

mexx

Debian 10 KDE.
Ищу съемный диск по известному UUID (konsole):
lsblk -f | grep 'AAAABBBB'
└─sdd1 FSTYPE LABEL AAAABBBB

Выбираю нужный столбец:
lsblk -f | grep 'AAAABBBB'| awk '{print $1}'
└─sdd1

Пытаюсь обрезать вывод первых двух символов:
lsblk -f | grep 'AAAABBBB'| awk '{print $1}' | cut -c 3-
�─sdd1

Получаю ерунду.
Методом научного тыка получаю нужный результат:
lsblk -f | grep 'AAAABBBB'| awk '{print $1}' | cut -c 7-
sdd1

При этом:
lsblk -f | grep 'AAAABBBB'| awk '{print $1}' | cut -c 4-
─sdd1

Получается, символы └ и ─ состоят из 3 символов каждый, но cut этого не знает.
Но так не во всех ОС, значит что-то у меня в системе недоделано.
Что?

Локали:
locale -a
C
C.UTF-8
POSIX
ru_RU.utf8


locale
LANG=ru_RU.UTF-8
LANGUAGE=ru
LC_CTYPE="ru_RU.UTF-8"
LC_NUMERIC="ru_RU.UTF-8"
LC_TIME="ru_RU.UTF-8"
LC_COLLATE="ru_RU.UTF-8"
LC_MONETARY="ru_RU.UTF-8"
LC_MESSAGES="ru_RU.UTF-8"
LC_PAPER="ru_RU.UTF-8"
LC_NAME="ru_RU.UTF-8"
LC_ADDRESS="ru_RU.UTF-8"
LC_TELEPHONE="ru_RU.UTF-8"
LC_MEASUREMENT="ru_RU.UTF-8"
LC_IDENTIFICATION="ru_RU.UTF-8"
LC_ALL=
Debian 10 KDE
Debian 11 Gnome

dzhoser

Ubuntu->Linux mint->Astra Linux SE->Debian 12
Для новичков

mexx

Debian 10 KDE
Debian 11 Gnome

qupl

Цитата: mexx от 30 апреля 2021, 21:08:38
dzhoser, да, конечно.
Из вывода blkid не легче  вырезать имя?

mexx

#4
Цитата: qupl от 01 мая 2021, 03:56:32Из вывода blkid не легче  вырезать имя?
Нет, blkid прав попросит, а у меня скрипт от пользователя работает. Да и не в этом суть. В некоторых других системах всё четко cut обрезает, значит нужно просто что-то доустановить или донастроить.

Debian 10 KDE
Debian 11 Gnome

mexx

Говорят, дело в наложенной заплатке coreutils-8.24-i18n.patch в системах, основанных на RedHat -- https://www.linux.org.ru/forum/admin/16301201?cid=16301252
Но подсказали как вообще уйти от cut:
lsblk -lf | grep 'AAAABBBB' | awk '{print $1}'
sda5
Debian 10 KDE
Debian 11 Gnome