Сравнение и анализ содержимого файлов
Имеем динамические логи, создаваемые ежечасно. Необходимо выявить 6 одинаковых пар значений (из последних 6 логов). Например: tear11 и 092 (то, что до точки анализировать нужно, т.к. это значение меняется постоянно) Логи выглядят так:
/home/tar/incoming/mear2/23030107.090
/home/tar/incoming/tear11/23030107.092
/home/tar/incoming/ear10/23030107.092
Я так понимаю, что строки надо разбить на массивы, но не совсем понятно как быть с последними 3 цифрами. На данный момент реализован сбор содержимого последних 6 логов в один файл output.txt. В нём полный путь до самого лога и содержимое.
miss=$(ls -1t /var/log/miss/*.miss | head -6)
cat /dev/null > output.txt
for file in $miss; do
echo "$file" >> output.txt
cat "$file" >> output.txt
echo "" >> output.txt
done
С помощью sed можно напечатать по отдельности tear11 и 092 Как соединить воедино данную конструкцию?
echo "/home/tar/incoming/tear11/23030107.092" | sed 's/.*\/\([^/]*\)\/\([^/]*\)$/\1/'
tear11
echo "/home/tar/incoming/tear11/23030107.092" | sed 's/.*\(...\)$/\1/'
092