Systemd shutdown: 90-секундная задержка, journalctl показывает тайм-ауты, останавливающие /dev и session-5.scope

Как это?

printf "%-4.4s\n" ????-* | uniq

Оболочка расширяет подстановочный знак в алфавитном порядке и передает результат в качестве аргументов в printf. Строка формата усекает каждый аргумент до четырех символов и добавляет новую строку. Теперь осталось только удалить соседние дубликаты.

Если вы не знаете количество цифр перед дефисом, но у вас есть идея, вы можете перебрать некоторые кандидаты в цикле:

for expr in '??' '???' '????' '?????'  # Quoted (!)
do
    printf "%-${#expr}.${#expr}\n" $expr-* |  # Unquoted!
    uniq
done

Здесь используется расширение параметра только для Bash$[# var}, который получает длину строки $var.

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

1
28.02.2017, 00:18
1 ответ

Согласно журналам, которые вы опубликовали, одна из проблем в процессе выключения связана с остановкой зашифрованного диска подкачки.

Используете ли вы зашифрованный диск подкачки? Вы недавно проверяли его монтирование, использование и размонтирование/остановку?

.
0
28.01.2020, 01:00

Теги

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