如何使用Shell写一个显示目录结构的命令?,


在Linux中使用Shell写一个显示目录结构的命令,快速寻找目录结构。

1、代码

  1. #!/usr/bin/env bash  
  2. # 本命令用于显示指定路径或者当前路径的文件结构,支持搜索  
  3. # tf 显示当前目录的文件结构  
  4. # tf 接关键词  搜索当前目录  
  5. # tf 目录 关键词 搜索指定目录  
  6. # 本命令依赖于 tree 命令  
  7. DIR=  
  8. KEYWORD=  
  9. # 不传路径 默认为搜索  
  10. if [ $# -eq 1 ]; then  
  11.   KEYWORD=$1  
  12. fi  
  13. # 指定路径搜索  
  14. if [ $# -eq 2 ]; then  
  15.   DIR=$1  
  16.   KEYWORD=$2  
  17. fi  
  18. if [ -n "$DIR" ]; then  
  19.    cd "$DIR" || exit 1  
  20. fi  
  21. pwd 
  22. tree -C -f | grep "$KEYWORD" 

2、使用效果

  • 当前路径
  1. tf    

  • 搜索
  1. tf 关键词  
  2. // 比如  
  3. tf lib 
  •  指定搜索某个路径 
  1. tf /usr/local/ lib 

3、颜色意思

  •  蓝色代表目录
  •  绿色代表可执行文件
  •  红色代表压缩文件
  •  浅蓝色代表链接文件
  •  灰色代表其他文件
  •  红色闪烁代表链接文件有问题
  •  黄色代表设备文件
  •  白色代表一般性文件,如:文本文件、配置文件、源码文件等 

相关内容