亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 8647 | 回復(fù): 6
打印 上一主題 下一主題

如何讀取文件夾并生成樹形結(jié)構(gòu)? [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2007-10-11 10:47 |只看該作者 |倒序瀏覽
高手請指定一二,謝謝

[ 本帖最后由 030802127 于 2007-10-11 10:50 編輯 ]

論壇徽章:
0
2 [報告]
發(fā)表于 2007-10-11 14:20 |只看該作者
like this?
  1. C:.
  2. ├─(null)
  3. ├─.cpan
  4. │  ├─build
  5. │  │  ├─ANDK000
  6. │  │  ├─GAAS000
  7. │  │  │  └─blib
  8. │  │  │      ├─arch
  9. │  │  │      │  └─auto
  10. │  │  │      │      └─LWP
  11. │  │  │      └─lib
  12. │  │  │          └─auto
  13. │  │  │              └─LWP
  14. │  │  ├─GAAS001
  15. │  │  │  └─blib
  16. │  │  │      ├─arch
  17. │  │  │      │  └─auto
  18. │  │  │      │      └─URI
  19. │  │  │      └─lib
  20. │  │  │          └─auto
  21. │  │  │              └─URI
  22. │  │  ├─GBARR000
  23. │  │  │  └─blib
  24. │  │  │      ├─arch
  25. │  │  │      │  └─auto
  26. │  │  │      │      └─NetFTP
  27. │  │  │      └─lib
  28. │  │  │          └─auto
  29. │  │  │              └─NetFTP
  30. │  │  └─SZABGAB000
  31. │  │      └─blib
  32. │  │          ├─arch
  33. │  │          │  └─auto
  34. │  │          │      └─SpreadsheetParseExcel
  35. │  │          └─lib
  36. │  │              └─auto
  37. │  │                  └─SpreadsheetParseExcel
  38. │  └─sources
  39. │      ├─authors
  40. │      │  └─id
  41. │      │      ├─A
  42. │      │      │  └─AN
  43. │      │      │      └─ANDK
  44. │      │      ├─G
  45. │      │      │  ├─GA
  46. │      │      │  │  └─GAAS
  47. │      │      │  └─GB
  48. │      │      │      └─GBARR
  49. │      │      └─S
  50. │      │          └─SZ
  51. │      │              └─SZABGAB
  52. │      └─modules
  53. ├─.DownloadManager
  54. ├─.gnupg
  55. ├─.jinit
  56. ├─.links
  57. ├─.p4qt
  58. ├─.ssh
  59. ├─.subversion
  60. │  └─auth
  61. │      ├─svn.simple
  62. │      ├─svn.ssl.server
  63. │      └─svn.username
  64. ├─.texmf
  65. │  ├─config
  66. │  │  └─web2c
  67. │  └─var
  68. │      ├─fonts
  69. │      │  └─map
  70. │      │      ├─dvipdfm
  71. │      │      │  └─updmap
  72. │      │      ├─dvips
  73. │      │      │  └─updmap
  74. │      │      └─pdftex
  75. │      │          └─updmap
  76. │      └─web2c
  77. ├─Contacts
復(fù)制代碼

論壇徽章:
0
3 [報告]
發(fā)表于 2007-10-11 14:44 |只看該作者

回復(fù) #2 systemalgorithm 的帖子

對,大概就這個樣子,請問用perl能實現(xiàn)嗎?

論壇徽章:
1
2015年辭舊歲徽章
日期:2015-03-03 16:54:15
4 [報告]
發(fā)表于 2007-10-11 15:14 |只看該作者
any thing is possible

論壇徽章:
0
5 [報告]
發(fā)表于 2007-10-11 15:26 |只看該作者
原帖由 030802127 于 2007-10-11 14:44 發(fā)表
對,大概就這個樣子,請問用perl能實現(xiàn)嗎?


幫你寫了一下。供參考:
#!/usr/bin/perl -w

# jim zhang @ 2007

use strict;

print "|___$ARGV[0]\n";
my @basenum = split/\//,$ARGV[0];
tree($ARGV[0]);

sub tree
{
        my $path=shift;
        my @files;
        opendir(THISDIR,$path);
        @files=readdir THISDIR;
        closedir THISDIR;
        my @number = split(/\//,$path);
        my $num = @number - @basenum;
        my $tab = "|   "x$num;
        my $tab1 = "|   "x($num+1);
        for(@files)
        {
                next if(/^\.$/);
                next if(/^\.\.$/);
                if(-d $path.'/'.$_)
                {
                        print "$tab1\|___$_\n";
                        tree($path.'/'.$_);
                }
                else
                {
                        print "$tab1\|___$_\n";
                }
        }
        return;
}

論壇徽章:
0
6 [報告]
發(fā)表于 2007-10-13 10:49 |只看該作者
&printDirTree('TestDir');

sub printDirTree {
    my $curr_dir = $_[0];
   
    # print the 'root' dir
    if (!$_[1]) {
        print "$curr_dir\n" ;
        $_[1] = '';
    }
   
    # get all entries in current dir except '.' '..'
    opendir DIR, $curr_dir or die "Cannot open $curr_dir: $!\n";
    my @files = grep { !/^(\.|\.\.)$/ } (readdir DIR);
    closedir DIR;
   
    for (0..$#files) {
        my $pre = $_[1];
        
        if ($_ < $#files) {
            print $pre, '├─', $files[$_], "\n";
            $pre .= '│  ';
        }
        else {
            print $pre, '└─', $files[$_], "\n";;
            $pre .= '    ';
        }
        
        if (-d "$curr_dir/$files[$_]") {
            &printDirTree("$curr_dir/$files[$_]", $pre);
        }
    }
}


在Win下和tree的圖形效果一致.

TestDir
├─Dir_1_1
│  ├─Dir_2_1
│  │  ├─input.txt
│  │  └─Copy of input.txt
│  ├─Dir_2_2
│  ├─input.txt
│  ├─Copy of input.txt
│  └─Z1
│      └─Z2
├─Dir_1_2
│  ├─Dir_2_1
│  │  └─input.txt
│  ├─Dir_2_2
│  │  └─Z1
│  │      └─Z2
│  └─Dir_2_3
├─Dir_1_3
│  ├─Dir_2_1
│  ├─Dir_2_2
│  │  ├─input.txt
│  │  └─Copy of input.txt
│  ├─input.txt
│  └─Copy of input.txt
└─Z1
    └─Z2

[ 本帖最后由 Lonki 于 2007-10-13 11:33 編輯 ]

論壇徽章:
0
7 [報告]
發(fā)表于 2007-10-13 11:30 |只看該作者
perl -e "system('tree')"
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP