目 录CONTENT

文章目录

Gitbash使用tree命令

Jinty
2024-05-27 / 0 评论 / 0 点赞 / 19 阅读 / 8614 字

window下的gitbash工具使用tree命令工具

附件下载:tree-1.5.2.1-bin.zip

自行下载地址:Tree for Windows (sourceforge.net)

解压后将tree.exe执行文件复制到gitbash安装路径下的/usr/bin/

测试:

$ tree -L 4 -I node_modules
.
|-- README.md
|-- babel.config.js
|-- lint-staged.config.js
|-- package.json
|-- pnpm-lock.yaml
|-- public
|   |-- favicon.ico
|   `-- index.html
|-- src
|   |-- App.vue
|   |-- assets
|   |   `-- logo.png
|   |-- components
|   |   `-- HelloWorld.vue
|   |-- main.ts
|   |-- router
|   |   `-- index.ts
|   |-- shims-vue.d.ts
|   |-- store
|   |   `-- index.ts
|   `-- views
|       |-- AboutView.vue
|       `-- HomeView.vue
|-- tsconfig.json
`-- vue.config.js

7 directories, 18 files

tree命令使用技巧

可参考附件包下man中文件

命令格式

tree  [-adfghilnopqrstuvxACDFNS]  [-L  level  [-R]]  [-H

       baseHREF]  [-T title] [-o filename] [--nolinks] [-P pat-

       tern] [-I pattern]  [--inodes]  [--device]  [--noreport]

       [--dirsfirst]   [--version]   [--help]  [--filelimit  #]

       [directory ...]

参数说明

	   --help Outputs a verbose usage listing.


       --version
              Outputs the version of tree.


       -a     All  files are printed.  By default tree does not
              print hidden files (those beginning  with  a  dot
              `.').   In no event does tree print the file sys-
              tem constructs `.' (current directory)  and  `..'
              (previous directory).


       -d     List directories only.


       -f     Prints the full path prefix for each file.


       -i     Makes  tree not print the indentation lines, use-
              ful when used in conjunction with the -f  option.


       -l     Follows  symbolic links if they point to directo-
              ries, as if they were directories. Symbolic links
              that  will  result  in recursion are avoided when
              detected.


       -x     Stay on the current file-system only.   Ala  find
              -xdev.


       -P pattern
              List  only  those  files that match the wild-card
              pattern.  Note: you must use  the  -a  option  to
              also  consider  those  files beginning with a dot
              `.' for matching.  Valid wildcard  operators  are
              `*'  (any zero or more characters), `?' (any sin-
              gle character),  `[...]'  (any  single  character
              listed  between  brackets  (optional - (dash) for
              character range may  be  used:  ex:  [A-Z]),  and
              `[^...]'  (any  single  character  not  listed in
              brackets) and `|' separates alternate patterns.


       -I pattern
              Do not list those files that match the  wild-card
              pattern.


       --noreport
              Omits  printing  of the file and directory report
              at the end of the tree listing.


       -p     Print the file type and permissions for each file
              (as per ls -l).


       -s     Print  the  size of each file in bytes along with
              the name.


       -h     Print the size of each file but in a  more  human
              readable  way,  e.g.  appending a size letter for
              kilobytes  (K),  megabytes  (M),  gigabytes  (G),
              terrabytes (T), petabytes (P) and exabytes (E).


       -u     Print  the  username,  or UID # if no username is
              available, of the file.


       -g     Print the group name, or GID # if no  group  name
              is available, of the file.


       -D     Print  the date of the last modification time for
              the file listed.


       --inodes
              Prints the inode number of the file or directory


       --device
              Prints the device number to  which  the  file  or
              directory belongs


       -F     Append  a  `/'  for directories, a `=' for socket
              files, a `*' for executable files and a  `|'  for
              FIFO's, as per ls -F


       -q     Print  non-printable  characters  in filenames as
              question  marks  instead  of  the  default  caret
              notation.


       -N     Print  non-printable  characters as is instead of
              the default caret notation.


       -v     Sort the output by version.


       -r     Sort the output in reverse alphabetic order.


       -t     Sort the output by last modification time instead
              of alphabetically.


       --dirsfirst
              List directories before files.


       -n     Turn  colorization off always, over-ridden by the
              -C option.


       -C     Turn colorization on always, using built-in color
              defaults if the LS_COLORS environment variable is
              not set.  Useful to colorize output to a pipe.


       -A     Turn on ANSI line graphics hack when printing the
              indentation lines.


       -S     Turn  on  ASCII  line graphics (useful when using
              linux console mode fonts).  This  option  is  now
              equivalent to `--charset=IBM437' and will eventu-
              ally be depreciated.


       -L level
              Max display depth of the directory tree.


       --filelimit #
              Do not descend directories that contain more than
              # entries.


       -R     Recursively cross down the tree each level direc-
              tories (see -L option), and at each of them  exe-
              cute  tree again adding `-o 00Tree.html' as a new
              option.


       -H baseHREF
              Turn on HTML output, including  HTTP  references.
              Useful  for  ftp  sites.  baseHREF gives the base
              ftp location when using HTML output. That is, the
              local  directory  may be `/local/ftp/pub', but it
              must be referenced  as  `ftp://hostname.organiza-
              tion.domain/pub' (baseHREF should be `ftp://host-
              name.organization.domain'). Hint: don't use  ANSI
              lines  with this option, and don't give more than
              one directory in the directory list. If you  wish
              to  use  colors  via  CCS  stylesheet, use the -C
              option in addition to this option to force  color
              output.


       -T title
              Sets  the title and H1 header string in HTML out-
              put mode.


       --charset charset
              Set the character set to use when outputting HTML
              and for line drawing.


       --nolinks
              Turns off hyperlinks in HTML output.


       -o filename
              Send output to filename.

使用示例

示例1

$ tree -L 4 -I 'node_modules|dist' -C
.
|-- README.md
|-- babel.config.js
|-- lint-staged.config.js
|-- package.json
|-- pnpm-lock.yaml
|-- public
|   |-- favicon.ico
|   `-- index.html
|-- src
|   |-- App.vue
|   |-- assets
|   |   `-- logo.png
|   |-- components
|   |   `-- HelloWorld.vue
|   |-- main.ts
|   |-- router
|   |   `-- index.ts
|   |-- shims-vue.d.ts
|   |-- store
|   |   `-- index.ts
|   `-- views
|       |-- AboutView.vue
|       `-- HomeView.vue
|-- tsconfig.json
`-- vue.config.js

7 directories, 18 files

示例2

$ tree -L 4 -I 'node_modules|dist' -d
.
|-- public
`-- src
    |-- assets
    |-- components
    |-- router
    |-- store
    `-- views

示例3

/e/11047/Workplace/Code/java-vue-tomcat-example/vue-code (master)
$ tree -L 3 -d -I 'target' ../java-code/
../java-code/
`-- src
    |-- main
    |   |-- java
    |   `-- resources
    `-- test
        `-- java

6 directories

0

评论区