下载tree命令的源代码

The Tree Command for Linux Homepage http://mama.indstate.edu/users/ice/tree/

[root@test ~]# ll -as mpBMCwepy
total 340
4 drwxr-xr-x 6 root root 4096 Oct 19 23:45 .
4 dr-xr-x---. 14 root root 4096 Oct 20 11:05 ..
4 drwxr-xr-x 10 root root 4096 Oct 19 23:15 dist
4 -rw-r--r-- 1 root root 147 Sep 1 15:42 .editorconfig
4 -rw-r--r-- 1 root root 7 Sep 1 15:42 .eslintignore
4 -rw-r--r-- 1 root root 47 Sep 1 18:26 .eslintrc.js
4 drwxr-xr-x 7 root root 4096 Oct 19 23:48 .git
4 -rw-r--r-- 1 root root 120 Sep 27 20:36 .gitignore
20 drwxr-xr-x 449 root root 20480 Sep 22 17:48 node_modules
4 -rw-r--r-- 1 root root 1791 Sep 22 17:48 package.json
220 -rw-r--r-- 1 root root 218783 Sep 22 17:48 package-lock.json
4 -rw-r--r-- 1 root root 26 Sep 1 15:42 .prettierrc
4 -rw-r--r-- 1 root root 314 Sep 21 22:42 project.config.json
36 -rw-r--r-- 1 root root 33137 Oct 16 22:17 README.md
4 drwxr-xr-x 10 root root 4096 Oct 4 18:31 src
8 -rw-r--r-- 1 root root 7083 Oct 19 23:45 .wepycache
4 -rw-r--r-- 1 root root 1677 Oct 13 14:27 wepy.config.js
4 -rw-r--r-- 1 root root 46 Sep 1 15:42 .wepyignore
[root@test ~]#

[root@test ~]# tree --help
usage: tree [-acdfghilnpqrstuvxACDFQNSUX] [-H baseHREF] [-T title ] [-L level [-R]]
[-P pattern] [-I pattern] [-o filename] [--version] [--help] [--inodes]
[--device] [--noreport] [--nolinks] [--dirsfirst] [--charset charset]
[--filelimit[=]#] [--si] [--timefmt[=]<f>] [<directory list>]
------- Listing options -------
-a All files are listed.
-d List directories only.
-l Follow symbolic links like directories.
-f Print the full path prefix for each file.
-x Stay on current filesystem only.
-L level Descend only level directories deep.
-R Rerun tree when max dir level reached.
-P pattern List only those files that match the pattern given.
-I pattern Do not list files that match the given pattern.
--noreport Turn off file/directory count at end of tree listing.
--charset X Use charset X for terminal/HTML and indentation line output.
--filelimit # Do not descend dirs with more than # files in them.
--timefmt <f> Print and format time according to the format <f>.
-o filename Output to file instead of stdout.
--du Print directory sizes.
--prune Prune empty directories from the output.
-------- File options ---------
-q Print non-printable characters as '?'.
-N Print non-printable characters as is.
-Q Quote filenames with double quotes.
-p Print the protections for each file.
-u Displays file owner or UID number.
-g Displays file group owner or GID number.
-s Print the size in bytes of each file.
-h Print the size in a more human readable way.
--si Like -h, but use in SI units (powers of 1000).
-D Print the date of last modification or (-c) status change.
-F Appends '/', '=', '*', '@', '|' or '>' as per ls -F.
--inodes Print inode number of each file.
--device Print device ID number to which each file belongs.
------- Sorting options -------
-v Sort files alphanumerically by version.
-r Sort files in reverse alphanumeric order.
-t Sort files by last modification time.
-c Sort files by last status change time.
-U Leave files unsorted.
--dirsfirst List directories before files (-U disables).
------- Graphics options ------
-i Don't print indentation lines.
-A Print ANSI lines graphic indentation lines.
-S Print with ASCII graphics indentation lines.
-n Turn colorization off always (-C overrides).
-C Turn colorization on always.
------- XML/HTML options -------
-X Prints out an XML representation of the tree.
-H baseHREF Prints out HTML format with baseHREF as top directory.
-T string Replace the default HTML title and H1 header with string.
--nolinks Turn off hyperlinks in HTML output.
---- Miscellaneous options ----
--version Print version and exit.
--help Print usage and this help message and exit.
[root@test ~]#


[root@test ~]# tree mpBMCwepy -I node_modules -o tmp
[root@test ~]# vim tmp
[root@test ~]# tree mpBMCwepy -I node_modules -o tmp

可以排除node_modules文件夹和其内文件、文件夹;

[root@test ~]# tree mpBMCwepy -I dist -o tmp


但是怎样同时排除node_modules、dist内的内容呢?

node_modules [error opening dir]

2216 directories, 14312 files
[root@test ~]# tree mpBMCwepy -I {dist,node_modules}

显示文件大小


[root@g mnt]# tree -h redis_data/
redis_data/
├── [4.0K] data
│   ├── [1.9G] appendonly.aof
│   └── [840M] dump.rdb
└── [4.0K] log
└── [ 26M] redis.log

2 directories, 3 files
[root@g mnt]#

原文地址:https://www.cnblogs.com/rsapaper/p/9821924.html