From 2c5316899c99fd2315f8528f772f3e3a8fc71e8c Mon Sep 17 00:00:00 2001 From: xyz Date: Tue, 19 Oct 2021 00:28:56 -0700 Subject: refactor --- home/xyz/.local/bin/gitmetap | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) (limited to 'home/xyz/.local/bin') diff --git a/home/xyz/.local/bin/gitmetap b/home/xyz/.local/bin/gitmetap index bac7059b..2a1e603e 100755 --- a/home/xyz/.local/bin/gitmetap +++ b/home/xyz/.local/bin/gitmetap @@ -2,4 +2,17 @@ # -rw-r--r-- == binary 110100100 == octal 644 # https://stackoverflow.com/a/1796009 -$1 ls-tree -r --name-only --full-tree HEAD | awk -v a="$2/" '{printf("%s%s\n",a,$0)}' | tr '\n' '\0' | xargs -0 ls -ldA -- | awk '{k=0;for(i=0;i<=8;i++)k+=((substr($1,i+2,1)~/[rwx]/)*2^(8-i));if(k){for(i=10;$i && $i!="->";i++)$9=$9" "$i;printf("%0o %s %s %s\n",k,$3,$4,$9)}}' > "$3" +$1 ls-tree -r --name-only --full-tree HEAD | awk -v a="$2/" '{printf("%s%s\n",a,$0)}' | tr '\n' '\0' | xargs -0 ls -ldA -- | awk ' +{ + k=0 + for(i=0;i<=8;i++) + k+=((substr($1,i+2,1)~/[rwx]/)*2^(8-i)) + if(k) + { + for(i=10;$i && $i!="->";i++) + $9=$9" "$i + printf("%0o %s %s %s\n",k,$3,$4,$9) + } +}' > "$3" + +#$1 ls-tree -r --name-only --full-tree HEAD | awk -v a="$2/" '{printf("%s%s\n",a,$0)}' | tr '\n' '\0' | xargs -0 ls -ldA -- | awk '{k=0;for(i=0;i<=8;i++)k+=((substr($1,i+2,1)~/[rwx]/)*2^(8-i));if(k){for(i=10;$i && $i!="->";i++)$9=$9" "$i;printf("%0o %s %s %s\n",k,$3,$4,$9)}}' > "$3" -- cgit v1.2.3-70-g09d2