查找文件我們通過可以使用find命令來查找了,今天小編來為各位介紹一個linux中查找目錄下包含某個類的jar文件例子,希望這個例子可以幫助到大家.
支持cygwin(兩種路徑格式都支持),支持相對路徑.
- #!/bin/bash
- #從目錄中的jar文件中查找指定的類
- path=$1
- name=$2
- if [ "" = "$path" ];then
- echo "path not specified"
- exit
- fi
- if [ "" = "$name" ];then
- echo "name not specified"
- exit 1
- fi
- #cygwin處理
- if [ ${path:1:2} = ':' ];then
- drive=`echo ${path:0:1}|tr "[:upper:]" "[:lower:]"`
- path=${path:3}
- path='/cygdrive/'$drive'/'${path//\//}
- elif [ ${path:0:1} != '/' ];then
- path=$(pwd)"/$path"
- fi
- list=(`find $path -name *.jar -type f`)
- c=${#list[*]}
- cLen=${#c}
- for row in ${list[*]}
- do
- c=`expr $c - 1`
- printf "%"-$cLen"sr" $c
- rowWin=${row//cygdrive/c/C:}
- num=`jar -tf $rowWin|grep $name|wc -l`
- if [ $num -gt 0 ];then --Vevb.com
- echo -e "r"$row
- fi
- done
例如:./findJarClass.sh “C:Workjavaapache-flume-1.5.2-binlib” PollableSource
新聞熱點
疑難解答