chalog

i love 玄米パン あんなし

treeで頻繁に使うoption

環境

  • Mac OSX 10.14.4
  • tree v1.8.0 (c) 1996 - 2018

特定のディレクトリ(ファイル)を除外し、それ以外のファイルを返す

  • -I
    • matchしたfile, directoryを除外。
  • a
    • dot fileを含む。
  • Q
    • ファイル名をquote。
  • R
    • 最大directory levelまで達したら結果を返す。
  • t
    • 最終更新日でsortする。
tree -aRQt -I 'bin|include|lib'
.
├── "pip-selfcheck.json"
├── "manage.py"
├── "proof_suger"
│   ├── "__init__.py"
│   ├── "settings.py"
│   ├── "urls.py"
│   ├── "wsgi.py"
│   └── "__pycache__"
│       ├── "__init__.cpython-37.pyc"
│       └── "settings.cpython-37.pyc"
└── "accounts"
    ├── "__init__.py"
    ├── "admin.py"
    ├── "apps.py"
    ├── "migrations"
    │   └── "__init__.py"
    ├── "models.py"
    ├── "tests.py"
    └── "views.py"

特定階層迄のdirectoryをfile sizeを付けて返す

  • s
    • file (directory) sizeを返す。
  • L
    • current directoryからx階層目までを返す。
tree -as -L 2 -I 'bin|include|lib'
.
├── [        288]  accounts
│   ├── [          0]  __init__.py
│   ├── [         63]  admin.py
│   ├── [         91]  apps.py
│   ├── [         96]  migrations
│   ├── [         57]  models.py
│   ├── [         60]  tests.py
│   └── [         63]  views.py
├── [        631]  manage.py
├── [         59]  pip-selfcheck.json
└── [        224]  proof_suger
    ├── [          0]  __init__.py
    ├── [        128]  __pycache__
    ├── [       3101]  settings.py
    ├── [        753]  urls.py
    └── [        399]  wsgi.py

help

まぁここを見れば済む話です。

usage: tree [-acdfghilnpqrstuvxACDFJQNSUX] [-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>]
    [--sort[=]<name>] [--matchdirs] [--ignore-case] [--fromfile] [--]
    [<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.
  --ignore-case Ignore case when pattern matching.
  --matchdirs   Include directory names in -P pattern matching.
  --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.
  ------- 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.
  -t            Sort files by last modification time.
  -c            Sort files by last status change time.
  -U            Leave files unsorted.
  -r            Reverse the order of the sort.
  --dirsfirst   List directories before files (-U disables).
  --sort X      Select sort: name,version,size,mtime,ctime.
  ------- Graphics options -------
  -i            Don't print indentation lines.
  -A            Print ANSI lines graphic indentation lines.
  -S            Print with CP437 (console) graphics indentation lines.
  -n            Turn colorization off always (-C overrides).
  -C            Turn colorization on always.
  ------- XML/HTML/JSON options -------
  -X            Prints out an XML representation of the tree.
  -J            Prints out an JSON 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.
  ------- Input options -------
  --fromfile    Reads paths from files (.=stdin)
  ------- Miscellaneous options -------
  --version     Print version and exit.
  --help        Print usage and this help message and exit.
  --            Options processing terminator.