⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tree.sh

📁 Shall高级编程
💻 SH
字号:
#!/bin/bash# tree.sh#  Written by Rick Boivie.#  Used with permission.#  This is a revised and simplified version of a script#+ by Jordi Sanfeliu (and patched by Ian Kjos).#  This script replaces the earlier version used in#+ previous releases of the Advanced Bash Scripting Guide.# ==> Comments added by the author of this document.search () {for dir in `echo *`#  ==> `echo *` lists all the files in current working directory,#+ ==> without line breaks.#  ==> Similar effect to for dir in *#  ==> but "dir in `echo *`" will not handle filenames with blanks.do  if [ -d "$dir" ] ; then # ==> If it is a directory (-d)...  zz=0                    # ==> Temp variable, keeping track of directory level.  while [ $zz != $1 ]     # Keep track of inner nested loop.    do      echo -n "| "        # ==> Display vertical connector symbol,                          # ==> with 2 spaces & no line feed in order to indent.      zz=`expr $zz + 1`   # ==> Increment zz.    done    if [ -L "$dir" ] ; then # ==> If directory is a symbolic link...      echo "+---$dir" `ls -l $dir | sed 's/^.*'$dir' //'`      # ==> Display horiz. connector and list directory name, but...      # ==> delete date/time part of long listing.    else      echo "+---$dir"       # ==> Display horizontal connector symbol...      # ==> and print directory name.      numdirs=`expr $numdirs + 1` # ==> Increment directory count.      if cd "$dir" ; then         # ==> If can move to subdirectory...        search `expr $1 + 1`      # with recursion ;-)        # ==> Function calls itself.        cd ..      fi    fi  fidone}if [ $# != 0 ] ; then  cd $1 # move to indicated directory.  #else # stay in current directoryfiecho "Initial directory = `pwd`"numdirs=0search 0echo "Total directories = $numdirs"exit 0

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -