diff --git a/.gitignore b/.gitignore index c6422f7..3004b96 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,4 @@ myenv dups.txt +alike.txt +invalid.txt diff --git a/dedup.py b/dedup.py index 27747e2..112ccfd 100644 --- a/dedup.py +++ b/dedup.py @@ -430,7 +430,7 @@ def quick_file_hash(file_path): if __name__ == "__main__": if len(sys.argv) < 3: print("Usage: python3 dedup.py file1.jpg file2.jpg") - sys.exit(1) + sys.exit(3) file1 = sys.argv[1] file2 = sys.argv[2] diff --git a/get_dups.bat b/get_dups.bat index fb057f2..1a00865 100644 --- a/get_dups.bat +++ b/get_dups.bat @@ -36,10 +36,18 @@ for /l %%i in (1,1,%count%) do ( echo. python dedup.py "%~1\!outer_image!" "%~1\!inner_image!" set exit_code=!errorlevel! - if !exit_code! gtr 0 if !exit_code! leq 2 ( + if !errorlevel! equ 1 ( echo %~1\!outer_image!>> dups.txt goto :break_inner ) + if !errorlevel! equ 2 ( + echo %~1\!outer_image!>> alike.txt + goto :break_inner + ) + if !errorlevel! equ 8 ( + echo %~1\!outer_image!>> invalid.txt + goto :break_inner + ) ) :break_inner ) diff --git a/get_dups.sh b/get_dups.sh index a91caeb..9a3ab68 100755 --- a/get_dups.sh +++ b/get_dups.sh @@ -31,9 +31,18 @@ for ((i = 0; i < ${#images[@]}; i++)); do echo -e "Compairing files: $outer_image TO $inner_image \n" python3 dedup.py "$1/$outer_image" "$1/$inner_image" exit_code=$? - if [ $exit_code -gt 0 ] && [ "$exit_code" -le 2 ]; then - echo "$1/$outer_image" >> dups.txt + if [ $exit_code -eq 1 ]; then + echo "$1/$outer_image # $inner_image" >> dups.txt break # No need to check more once found duplicate fi + if [ $exit_code -eq 2 ]; then + echo "$1/$outer_image # $inner_image" >> alike.txt + break # No need to check more once found close match to duplicate + fi + if [ $exit_code -eq 8 ]; then + echo "$1/$outer_image # $inner_image" >> invalid.txt + break # No need to check more once found bad image + fi + done done