moin,
das folgende Script sucht nach .pacnew Dateien in /etc und macht diffs zu den alten Dateien.
Denkbar sind dann verschiedene Operationen auf den neuen oder alten Dateien.
Sollte ein solches Tool bereits existieren, kann das Posting geloescht werden.
Vielleicht wird mergepac ja mal wie mergemaster [0] :o
Beste Gruesse
moin
[0]
http://src.gnu-darwin.org/src/usr.sbin/mergemaster/mergemaster.sh.html
#!/bin/sh -
#
# $Id: mergepac.sh,v 1.00 2011/08/05 04:03:00 wlaus Exp $"
#
# simple script for .pacnew files, for each .pacman.new file; do an action to the old file
# should work with .rpmnew as well
EXTENSION=".pacnew"
VERBOSE=1
clear
print_greetings() {
# this is all about pretty printing
echo "#########################################################################"
echo "### mergemaster for Linux, run at `date` ###"
echo "#########################################################################"
echo ""
}
print_sepp() {
echo "::--------------------------------------------------------------------::"
}
(( $VERBOSE )) && echo -e "\n\t\a\n" && print_greetings
test -z ${EXTENSION} && echo "need \.pacnew or \.rpmnew extension" && exit 1
for x in $(find /etc -name "*${EXTENSION}"); do
if stat $x >/dev/null; then
case $1 in
list) echo ${x}
;;
diff)
echo "Hi, hit enter to see diff for $x!"
read
echo "### cmd: diff for $x";
diff -Naub ${x%%${EXTENSION}} ${x}|less;
print_sepp
;;
sync_echo)
echo "Syncing to new (echomode)"
echo echo cp ${x} ${x%%${EXTENSION}};
echo "done."
;;
clean_echo)
echo "Removing...(echomode)"
echo echo rm ${x};
echo "done."
;;
edit_new)
echo "Edit new (echomode)"
echo echo vim ${x};
echo "done."
;;
edit_new_mv_back)
echo "Edit new_mv_back (echomode)"
echo echo vim ${x};
echo echo mv ${x} ${x%%${EXTENSION}};
echo "done."
;;
scp)
;;
sql)
;;
*|help|hello)
echo "moin, Try list, diff, or sync_echo";break
;;
esac
fi
done