echo $(grep -oP '^\s*JAVA_HOME=\K.*' /etc/Symantec.conf)"/java -version"
/opt/symantec/java/jdk1.6.0_27/jre/bin/java -version
#cat /etc/Symantec.conf
[Symantec Shared]
BaseDir=/opt/symantec
JAVA_HOME=/opt/symantec/java/jdk1.6.0_27/jre/bin
Eu preciso de um comando para copiar a linha /opt/symantec/java/jdk1.6.0_27/jre/bin
do arquivo acima e insira java -version
na frente dele.
então ele fará o seguinte comando:
#/opt/symantec/java/jdk1.6.0_27/jre/bin/java -version
Possível solução:
# $(sed -n 3p tt | sed 's/JAVA_HOME=//')/java -version
sed -n Np # print line #N
sed 's//' # replace
tente:
grep -Po "JAVA_HOME=\K.*" /etc/Symantec.conf
/ java -version
grep -P permite usar um lookbehind no regex usando '\ K' e -o retorna apenas a parte correspondente do regex
cercando o grep em backticks o substitui pelo resultado
Outra solução:
$ printf "$(grep JAVA_HOME /etc/Symantec.conf | cut -d= -f2)/java --version\n"
/opt/symantec/java/jdk1.6.0_27/jre/bin/java --version
Se você quiser imediatamente executar este comando:
$(printf "$(grep JAVA_HOME /etc/Symantec.conf | cut -d= -f2)/java --version\n")
Tags shell-script