Используйте команду head или аналогичную, чтобы определить, когда байты изменяются в файле

libapt-front был удален из Debian в 2009 году , а также, как следствие, из Ubuntu (возможно, немного позже). Я удивлен, что у вас это есть в 14.04; Launchpad не перечисляет его ни в одной поддерживаемой версии (включая 14.04, которая все еще поддерживается). Предположительно он был установлен из другого источника или оставлен от более старой версии; в любом случае использовать его, вероятно, не лучшая идея.

Очевидно, последний раз он был включен в Ubuntu в Jaunty; вы можете найти исходный код для этой версии пакета в Launchpad .

2
31.01.2017, 06:51
1 ответ

Возможно что-то вроде этого:

#!/bin/bash

while true; do
    diff -q <(head -n 1 fileA.txt) <(head -n 1 fileB.txt)
    sleep 5
done

Учитывая эти два файла ( fileA.txt и fileB.txt ):

cat fileA.txt fileB.txt 
foo
bar

foo
bar

Когда я изменяю первую строку в fileA.txt :

cat fileA.txt 
fooo
bar

, я получаю следующие выходные данные сценария:

./checkFirst.sh 
Files /dev/fd/63 and /dev/fd/62 differ
Files /dev/fd/63 and /dev/fd/62 differ
Files /dev/fd/63 and /dev/fd/62 differ
Files /dev/fd/63 and /dev/fd/62 differ

Если я изменяю вторая строка, в сценарии ничего не происходит, он просто продолжает цикл:

cat fileA.txt 
foo
barbara

Протестировано в Mac OS X 10.11.6 и:

GNU bash, version 3.2.57(1)-release (x86_64-apple-darwin15)
Copyright (C) 2007 Free Software Foundation, Inc.
2
27.01.2020, 22:10

Теги

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