2010-06-30 70 views
2

脚本壳,我想调用这个shell脚本:调用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+""); 

      } 

     } 

但是我的电脑被封锁,我什么都做不了。另外,没有输出文件。
也许,问题在于我如何调用脚本以及如何传递参数文件名。

任何帮助?

在此先感谢

回答

1

你需要你的shell脚本中检索参数:

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

那是poroblem! 非常感谢! – 2010-07-01 07:29:48