# tree.awk # rfind.exe [drive:path] | awk -f tree.awk # afind.com [drive:path] *.* /d | awk -f tree.awk # ツリー表示もどき / -d/ || / v-/ || $1~/\\$/ { put() sub(/\\$/,"",$1) gsub(/\\/,"/",$1) l = split( $1,k,"/" ) for( i = 1 ; i <= l ; i++ ){ if( b[i] != k[i] ){ n = n sprintf("%-3s ",k[i]) b[i+1] = "" b[i]=k[i] } else n = n ( ( b[i+1] == k[i+1] ) ? " " : " +--" ) } } END{ put() } function put(){ if( n == "" ) return print n n = "" }