在我看来,这应该找到我正在寻找的符号。相反,它没有找到符号。我哪里错了?我知道该符号存在于 .jar 文件之一中。
1 ARRAY=(`find ${PWD} -name '*.jar'`);
2 SYMBOL=$1;
3 for i in ${ARRAY[@]};
4 do
5 JAR=`jar -tf $i`;
6 GREPED=`echo ${JAR} | grep -s ${SYMBOL} | tr -d ' '`;
7 if [ "${GREPED}" != "" ]; then
8 echo $GREPED
9 fi
7 done
也许我误解了 jar 命令选项?
假设我为了好玩而下载了 android SDK 并在其上运行了一个工具,该工具说它找不到给定的类 com.android.email.mail.Flag。所以我运行上面的脚本:
$ ./script.sh Flag
这应该打印出jar
命令的输出。如果我想要上面的 jar 文件第 8 行
echo $i
.