#1 ... sed -e "s/.*([FGH]):\\backup\\/\1:\\backup\\ /" < cat.txt > catall #2 ... # (bourne shell syntax, sorry) for d in F G H; do awk '/_/{print "'$d'":\\backup\\" $5 } < ${d}dir.txt done > dirall #3 ... could have done this above by piping through sort. #4 & 5 ... diff -u dirall.srt catall.src | sed -e '/---/d' -e '/^[^-]/d' -e 's/-//g' -e 's/^/del /' > delfile.bat