Получите разницу между файлами fleetctl и локальными файлами
У меня есть файл в fleetctl, назовем его file@123.service И у меня есть локальный файл, назовем его file @.service
Я хочу проверить, отличаются ли они или нет. Если они различаются, я инициирую команды уничтожения и запуска, но я не могу найти способ различения между ними..
Я сделал встроенный скрипт:
check_diff ()
{
# Check if local file is diff from fleetctl file "file@123.service"
# file@123.service is currently active in the fleetctl
# Looking for something like
diff (fleetctl list-units | grep $1 | head -n 1 | awk '{print $1}') $1.service
}
# Get local file names and push them to the function
for unit in $(ls -l | awk '{print $9}' | grep -e \.service); do
check_diff ${unit%.*} # Will result unit as "file@"
done
1 ответ
Решение:
Нашел решение
DIFF=$(fleetctl cat $fleetctlFile | diff -q -w ~/$localServiceUnit -)
Тогда просто проверьте переменную $DIFF
if [ -z "$DIFF" ]
then
echo "No DIFF"
else
echo "DIFF was found"
fi