mc/vfs/extfs/lslR.in
2000-04-12 09:25:07 +00:00

40 lines
776 B
Bash

#! /bin/sh
# Based on previous version of lslR
# Modified by Tomas Novak <tnovak@ipex.cz> April 2000
# (to allow spaces in filenames)
ZCAT="gunzip -c"
CAT="cat"
mclslRfs_list () {
case "$1" in
*.gz) MYCAT="$ZCAT";;
*.z) MYCAT="$ZCAT";;
*.Z) MYCAT="$ZCAT";;
*) MYCAT="$CAT";;
esac
$MYCAT "$1" | gawk '
BEGIN { dir="" }
/^total\ [0-9]*$/ { next }
/^$/ { next }
/^[^[:blank:]].*:$/ {
if ($0 ~ /^\//) dir=substr($0, 2);
else dir=$0;
if (dir ~ /\/:$/) sub(/:$/, "", dir);
else sub(/:$/, "/", dir);
next;
}
{
printf "%s %3d %-8s %-8s %8d %3s %2d %5s %s", $1, $2, $3, $4, $5, $6, $7, $8, dir
for (i=1; i<9; i++) sub("[^[:blank:]]+[[:blank:]]+", "");
printf "%s\n", $0
}' 2>/dev/null
}
case "$1" in
list) mclslRfs_list "$2"; exit 0;;
esac
exit 1