view bin/index2 @ 719:bcdf320dabf4

Rewrite the ed2k again in php Getting openssl to hash md4 is a pain.
author nanaya <me@nanaya.net>
date Sun, 10 Dec 2023 00:35:22 +0900
parents 5bafb912837e
children
line wrap: on
line source

#!/bin/sh

# Index version 2! Much better than first one. Hopefully.

# Execute safely.
safe_path()
{
	__start=$(printf "%s" | cut -c 1)
	__path=
	case "${__start}" in
		.|/) __path="$*";;
		*) __path="./$*";;
	esac
	printf "%s" "${__path}"
}

get_basename() { basename "$(safe_path "$*")"; }
get_basename_pipe() { sed -e 's#.*/\([/]*\)$#\1#'; }

filename_hash()
{
	printf "%s" "$(get_basename "$*")" 
}
generate_table_of_files()
{
	filetable_generator "$@"
}
filetable_generator()
{
	# Uses perl for speed.
	perl -e 'use File::Find;
use Digest::SHA1 qw(sha1_hex);
use_warnings;
use_strict;
sub printer { printf("%s\n", sha1_hex($_)) if(-e && -f && !-l); } 
find(\&printer, @ARGV);' "$@"
}
_srcdir=.
generate_table_of_files "$@"