Как использовать хвост для уведомлений выше 0.99% loadav?

Самый простой способ - использовать sed:

for file in code_*; do
  newname=$(echo $file | sed 's/_0*/_/')
  mv "$file" "$newname" #you may want to use -i to avoid accidents
done

Я обычно записываю это в одну строку.

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

0
07.03.2019, 11:22
2 ответа

tailищет новые строки, а не смены строк:

-f, --follow[={name|descriptor}]
      output appended data as the file grows;

Если вы хотите проверить это поведение самостоятельно, вы можете использовать эту команду для изменения строки вtestfile:

while true ; do
    sed "s/^.*$/$(date)/" -i testfile
    sleep 1
done

Вы можете использовать цикл Wile для проверки изменений строки:

while true ; do
    grep -q "^[1-9]" /proc/loadavg && echo "$message"
    sleep 1
done
1
28.01.2020, 02:40

Я думаю, вы можете использовать tail вместе с grep для изменений, а не только для новых строк.

Я только что прочитал перед тем, как зайти сюда, что /proc/loadavg на самом деле не файл, а интерфейс ядра, и, возможно, вы правы, но даже если бы это было так, я все равно был бы в восторге.

Я надеялся на уведомление inotify, а не на загрузку только постоянных циклов, но, похоже, компьютер говорит «нет».

0
28.01.2020, 02:40

Теги

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