Mercurial > ec-dotfiles
view bin/index2 @ 146:e2a96553da9a
Welp license. ISC it is.
author | Edho Arief <edho@myconan.net> |
---|---|
date | Sun, 02 Oct 2011 04:29:57 +0700 |
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 "$@"