2017-10-10 2 views
0

je dois rechercher une valeur dans un fichier avec ce format:Comment rechercher une valeur dans un fichier de propriétés avec le format clé = valeur à l'aide du script de vente?

key1=value1 
key2=value2 

Note: la valeur peut avoir des espaces.

J'ai besoin d'obtenir la valeur de la clé avec un script shell.

J'ai ce code:

myfile="./app.properties" 
keyToSearch="EXAMPLE" 
value="" 
if [ -f "$myfile" ]  
    then 
     echo "$myfile found." 
     #Search the keyToSearch and obtain the value. 
else 
    echo "$myfile not found." 
fi 

Comment puis-je chercher la clé et obtenir la valeur? Par exemple avec un moment/faire ou similaire.

Merci!

+0

c'est simple avec le langage awk – RomanPerekhrest

+0

@mikea est similaire, mais dans mon problème je espaces, c'est mon principal problème avec le script. –

Répondre

1
VAL=$(grep "$keyToSearch" $myfile | cut -d'=' -f2-) 

le « -F2- » demande essentiellement pour toutes les données après la première « = ».

https://linux.die.net/man/1/cut

+0

Merci! et int exemple: key1 = va lue (avec espace) comment je peux obtenir seulement "va lue"? –

+0

Np, juste compris ce que vous vouliez, cela correspondra à la clé et obtenir la valeur. – MostWanted

+0

Merci! travaille pour moi. –