Решения тех проблем, с которым мне приходилось сталкиваться.

понедельник, 12 ноября 2007 г.

сравнить две директории

Иногда хочется узнать, какие файлы есть в одной директории, но которых нет в другой (или наоборот). Самой простой способ - команда diff


diff -q dir1 dir2

Если хочется программной обработки, то можно вот таким способом (показывает какие из файлов в dir1 отсутствуют в dir2):

for i in dir1/*; do
if [ -f $i -and \( ! -e dir2/`basename $i` \) ]; then
# do something
echo $i
fi;
done

2 комментария:

shulya комментирует...
Этот комментарий был удален автором.
shulya комментирует...

-r для рекурсивного поиска. иначе выводится список директорий