2010-05-20 11 views
5

Quiero hacer una aplicación java de comandos mancha de la que duerma incluyen todos los "java-jar argumentos some.jar" desagradableaplicación de línea de comando lisa de Java?

en cambio, tendrían que funcione igual que

program -option argument 

como cualquier otra línea de comandos aplicación Utilizo ubuntu linux, y estaría bien si incluyera un poco de script .sh o cualquier cosa. Sé que puedo simplemente crear un archivo con java -jar program.jar y hacer chmod +x file, luego podría ejecutar i con ./file, pero ¿cómo puedo pasar los argumentos al programa?

Respuesta

12

Uso

java -jar program.jar $1 $2 $3 

para acceder a 1º, 2º y 3er argumento del guión.

Ejemplo de http://www.ibm.com/developerworks/library/l-bash2.html

#!/usr/bin/env bash 

echo name of script is $0 
echo first argument is $1 
echo second argument is $2 
echo seventeenth argument is $17 
echo number of arguments is $# 

O, mejor aún, hacer lo que sugiere @nos:

java -jar program.jar "[email protected]" 
+6

O simplemente reenvía todos los argumentos a la aplicación java. p.ej. 'java -jar $ @' – nos

+0

si quieres, coloca el script bash en el bash PATH – phoenix24

+0

Solo para ser realmente quisquilloso, creo que "$ @" maneja las comillas mejor (cita cada argumento, que es útil si hay espacios) en caminos, por ejemplo). hombre bash le diría con certeza ... – pdbartlett

0

En Linux puede utilizar binfmt.

0

Si está tratando de ser realmente hábil y se está ejecutando en una plataforma que admite bash, puede ocultar el hecho de que está utilizando Java completamente del usuario produciendo un archivo autoextraíble.

Eche un vistazo a this post para obtener algunos consejos sobre cómo implementar un archivo autoextraíble.

Cuestiones relacionadas