2016-08-22 4 views
0

Я только начал работать с скриптами Ant, поэтому я не уверен, что задаю правильный вопрос, но вот он:Как удалить все файлы из выбранного набора файлов?

У меня есть скрипт, который предположительно найдет шаблон RegEx из отдельных файлов в указанном каталоге и замените его, но я хочу вывести список выбранных файлов на консоли.

Я успешно создал скрипт для поиска и замены без проблем, и я уже знаю, сколько файлов было изменено (чуть более 5000 файлов). Теперь я пытаюсь вывести список файлов, но количество файлов, отображаемых на консоли, значительно меньше (чуть менее 600 файлов). Я не уверен, если это только то, что количество файлов слишком высока для вывода на консоль или мой сценарий нуждается в работе

Вот код я должен вывод мои результаты:

<target name="find"> 
     <path id="find.path"> 
      <fileset dir="${custom.dir}"> 
       <include name="**/*.js"/> 
       <include name="**/*.jsp"/> 
       <include name="**/*.xml"/> 
       <include name="**/*.css"/> 
       <include name="**/*.java"/> 
       <containsregexp expression="(YEAR|DATE)(?:\s*2016,\s)"/> 
      </fileset> 
     </path> 
     <pathconvert pathsep="${line.separator}--> "    
       property="echo.path.compile"    
       refid="find.path"> 
     </pathconvert> 
     <echo>${echo.path.compile}</echo> 
    </target> 

ответ

0

Если предположить, что XML-файл для вашего муравья - find.xml, в котором указан вышеуказанный код, а custom.dir для ваших файлов - /Desktop/Files.

Вот шаги, с использованием оболочки Bash:

  1. Создайте файл с именем find.sh в том же каталоге вашего find.xml

  2. Внутри file.sh поместить следующее (вы НЕ использовать ${custom.dir} в качестве ссылки в коде ниже):

    for f in /Desktop/Files/*; do 
        echo $f; 
        ant -f find.xml find; 
    done 
    

что это делает, он просматривает каждый файл в каталоге файлов независимо от его расширения, он эхо-имя файла с его местоположением, а затем выполняет find.xml с целью find.

Вы запускаете файл find.sh с терминала, например ./find.sh.