Ресурс дружественный способ указать к пользовательской программе не зависает

Позвольте мне записать здесь просто свои немногие мои события:

Хорошо в моем случае, у меня есть RAID 1 (1 ГБ только для начальной загрузки/) и RAID 5 для отдыха дискового пространства.

Я использую личинку 2 от debian, сжимают, и это прекрасно. Личинка 2 не имеет этого ограничения, больше любят личинку 1, сделал.

В наше время это не имеет значения. Это было необходимо, когда у Вас была версия 1 личинки, которая не знала, как загрузиться от RAID5, но это знало, как загрузиться от набега 1. И это - причина почему.

В моем случае я использую его только для случая, мне мог быть нужен он, если что-то плохо происходит. Поскольку не каждый раз у Вас есть новый ЖИВОЙ debian или человечность в Вашем кармане.

Также, если что-то плохо происходит, я делаю резервное копирование из начальной загрузки/. После того как это уже сохранило мою установку.

Я использую Linux SW RAID 1 с 3 жесткими дисками и RAID 5 с теми же жесткими дисками. Первый 1 ГБ я использую для RAID 1.

Но если Вы используете LILO или версию 1.98 GRUB-> 2, у Вас не должно быть separed / раздел начальной загрузки.

10
31.10.2013, 16:27
2 ответа

[Я просто понял, что Ваш сценарий является жемчугом, но та же логика применяется, print "\r", и т.д. Вы захотите использовать STDERR или иначе выключите буферизацию, $| = 1. Посмотрите нижнюю часть.]

Один способ реализовать CLI "индикатор хода выполнения" включает использование \r (возврат каретки) символ. Это приносит курсор к началу текущей строки:

#!/bin/bash

count=0
while ((1)); do
    echo -ne "\rCount: $count"
    sleep 1;
    count=$(($count+1));
done     

Если это не имеет смысла, просто попробуйте его.

Вы могли использовать ту технику для указания, сколько строк или тысяч строк, было обработано до сих пор. Десятки или сотни строк могут быть хорошими, так как это не слишком часто (больше обновлений == более медленное время выполнения), но вероятно все еще достаточно часто, чтобы показать, что прогресс продолжается. Можно указать единицу или просто добавить нули.

Отметьте использование -n и -e с echo, это важно.

Можно также использовать \b (клавиша Backspace) к подобному эффекту.


В жемчуге:

#!/usr/bin/perl
use strict;
use warnings FATAL => qw(all);

$| = 1;  # Pipeline stdout (i.e., no buffering).

my $count = 1;
while ($count) {
    print "\rCount $count";
    sleep 1;
    $count++;
}               
6
27.01.2020, 20:02

Распечатайте сингл . не повторяя новую строку, как Вы обрабатываете. Возраст старая техника.

Таким образом, Вы добираетесь:

Processing...............

Простой и эффективный.

3
27.01.2020, 20:02

Теги

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