2010-06-30 2 views
2

Я хотел бы назвать этот скрипт:Вызов сценария оболочки из программы Java с параметрами

#!/bin/sh 
exiftool -a -u -g1 -j videos/$filename > metadata/$filename1.json; 

Из программы в Java. Я стараюсь:

File dir = new File("videos"); 
    String[] children = dir.list(); 
    if (children == null) { 
     // Either dir does not exist or is not a directory 
     System.out.print("No existe el directorio\n"); 
     } else { 
      for (int i=0; i<children.length; i++) { 
       // Get filename of file or directory 
       String filename = children[i]; 

       //Recojo el momento exacto 
       Process p = Runtime.getRuntime().exec("/home/slosada/workspace/Hola/Metadata.sh "+filename+" "+filename+""); 

      } 

     } 

Но мой компьютер заблокирован, и я ничего не могу сделать. Кроме того, нет выходных файлов.
Возможно, проблема заключается в том, как я вызываю скрипт и как передаю имя параметра parametre.

Любая помощь?

Заранее спасибо

ответ

1

Вы должны получить аргументы в ваш сценарий оболочки:

#!/bin/sh 
filename=$1 
filename1=$2 
exiftool -a -u -g1 -j videos/$filename > metadata/$filename1.json 
+0

Это был poroblem !! Большое вам спасибо! –

Смежные вопросы