2017-05-17 1 views
0

J'ai un fichier qui a en dessous chemin-Comment remplacer un chemin avec un autre chemin en utilisant sed dans une ressource de chef

machine virtuelle Java ==/home/user/tools/jdk/bin/java

I Je veux remplacer "/ home/utilisateur/tools/jdk/bin/java" par "/ apps/java/bin"

J'utilise la commande ci-dessous dans la ressource chef, mais cela ne fonctionne pas- sed -i -e ' s // home/utilisateur/tools/jdk/bin/java // apps/bin/java/'testfilename

Je reçois l'erreur ci-dessous- STDERR: sed: impossible d'ouvrir le fichier ser/tools/jdk/bin/java // apps/bin/java /: aucun fichier ou répertoire

+0

Vous devez échapper aux barres obliques: '\ /' –

+0

Jetez un oeil à [Chef :: FileEdit] (http://stackoverflow.com/questions/14848110/how-can-i-change-a-file -avec-chef). N'appelez pas 'sed' de Chef. Veuillez poster votre code dans vos futures questions. – StephenKing

+0

oui j'ai essayé avec cela aussi- sed -i -e/s/\ home \/utilisateur \/tools \/jdk \/bin \/java/\/apps \/bin \/java/'testfilename – user6378152

Répondre

0

Consultez le livre de recettes line pour ce type d'opération.