Chinaunix

标题: bash脚本输出一个有层次感的目录 [打印本页]

作者: dengjin_cu    时间: 2010-03-04 12:59
标题: bash脚本输出一个有层次感的目录
就是做到如下的格式
dir_a
  sub_dir_a
    sub_file1
    sub_file2
  sub_dir_b
    sub_sub_dir_a
      sub_file_file1
dir_b
  sub_file3
可是不大对,大家能帮我看看嘛,谢谢了,另外刚学shell,觉得用set -x调试看不大清楚,有什么别的调试方法吗?
  1. #! /bin/bash

  2. output(){
  3.         file=$1;blank=$2;
  4.         if [ -d $file ] && [ $file != '.'] && [ $file != '..'];then
  5.                 for((n=1;n<$blank;n++));do
  6.                         echo -n " ";   #输出前导空格
  7.                 done
  8.                 echo $file
  9.                 filelist=$(cd $file;ls -a);
  10.                 for f in $filelist;do
  11.                         output $f $((blank+1))
  12.                 done
  13.         else
  14.                 for((n=1;n<$blank;n++));do
  15.                         echo -n " "
  16.                 done
  17.                 echo $file
  18.         fi
  19. }

  20. for ff in "$@";do
  21.         output $ff 1;
  22. done
复制代码

作者: Shell_HAT    时间: 2010-03-04 13:27
http://bbs.chinaunix.net/thread-346943-1-1.html
作者: dengjin_cu    时间: 2010-03-04 14:44
谢谢但是我想知道我的脚本哪里错了,我写的没tree那么复杂的




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2