比较同一文件夹linux中的文件名与不同类型(Extns)

时间:2014-01-02 04:18:39

标签: shell unix

我想比较usr / folder1 / * .java文件并检查同一文件夹中所有JAVA文件的.class文件是否存在

1 个答案:

答案 0 :(得分:1)

Logic首先获取* .java目录中的java文件列表 然后对于* .java的每个条目,在类目录中检查它 最后打印缺少的类文件

您可以使用此代码

执行此操作
#!/bin/bash

JAVA_DIR="Your java directory"
CLASS_DIR="Your class directory"

CUR_DIR=`pwd`

cd "${JAVA_DIR}"
JAVA_FILES=`ls *.java`

cd "${CLASS_DIR}"
MISS_FILES=""
for j_file in `echo "$JAVA_FILES" | tr ' ' '\n'`
do
    f_name=`echo $j_file | cut -d'.' -f1`
    c_name=$f_name".class"
    if [ ! -f $c_name ]
    then
        MISS_FILES="$MISS_FILES","$c_name"
    fi
done

cd "${CUR_DIR}"
echo "Following files are missing:$MISS_FILES"