From: Chris Koeritz Date: Sat, 23 Jul 2016 22:10:24 +0000 (-0400) Subject: new script to compare all the file names across two directory hierarchies X-Git-Tag: 2.140.90~501 X-Git-Url: https://feistymeow.org/gitweb/?a=commitdiff_plain;h=0ffe7eee5722883afdd772db452e4f9d3caa631a;p=feisty_meow.git new script to compare all the file names across two directory hierarchies (does not consider file contents or dates or anything, just mere presence). --- diff --git a/scripts/files/compare_dirs.sh b/scripts/files/compare_dirs.sh new file mode 100644 index 00000000..02571dba --- /dev/null +++ b/scripts/files/compare_dirs.sh @@ -0,0 +1,33 @@ +#!/bin/bash + + +dir1="$1"; shift +dir2="$1"; shift + +if [ -z "$dir1" -o -z "$dir2" ]; then + echo This script needs two directory names for which it will create a + echo list of differences in the two directory hierarchies. + exit 1 +fi +if [ ! -d "$dir1/" -o ! -d "$dir2/" ]; then + echo The directories to be compared must already exist. + exit 1 +fi + +out1="$(mktemp "$TMP/compare_dirs_output.XXXXXX")" +out2="$(mktemp "$TMP/compare_dirs_output.XXXXXX")" + +pushd "$dir1" &>/dev/null +#find . -type d >"$out1" +find . >"$out1" +sort "$out1" >"$out1".sort +popd &>/dev/null + +pushd "$dir2" &>/dev/null +#find . -type d >"$out2" +find . >"$out2" +sort "$out2" >"$out2".sort +popd &>/dev/null + +diff "$out1".sort "$out2".sort +