J'ai une commande qui répertorie les répertoires d'instances Weblogic sur un serveur. Je souhaite afficher le contenu d'un fichier dans le répertoire parent de chaque répertoire répertorié.Afficher le contenu d'un fichier dans le répertoire parent
Une autre caractéristique serait d'afficher le nom du fichier en plus d'afficher le contenu
/usr/ucb/ps auwwx | grep weblogic | tr ' ' '\n' | grep security.policy | grep domain | awk -F'=' '{print $2}' | sed -e 's/weblogic.policy//' -e 's/security\///' -e 's/dep\///' | sort
La sortie de la commande ci-dessus ressemble à ceci
/opt/<some_directory>/<domain_name>/<app_name>/
/opt/<some_directory>/<domain_name>/<app_name>/
Je veux voir la contenu des fichiers somefile.cf dans les répertoires /opt/<some_directory>/<domain_name>/
soit /opt/<some_directory>/<domain_name>/somefile.cf
Pour le dire simplement, j'ai besoin d'un sed regex pour rep lace le nom du dernier répertoire de la sortie.
J'ai essayé ainsi
/usr/ucb/ps auwwx | grep weblogic | tr ' ' '\n' | grep security.policy | grep domain | awk -F'=' '{print $2}' | sed -e 's/weblogic.policy//' -e 's/security\///' -e 's/dep\///' | sort | while read -r DIR ; do dirname $DIR ; done | uniq | sed 's/$/\/somefile\.cf/g'
mais je suis sûr que la partie while et la dernière partie sed peuvent être supprimées facilement à l'aide d'une simple commande sed comme celui-ci
sed -e 's/<regex_for_last_directory_name>/somefile.cf/'
Qu'est-ce qui ne va pas avec $ DIR /../ somefile.cf? –
rien à redire. juste glissé mon esprit c'est tout :) – ghostdog74
tandis que lu -r DIR; fais DIR = $ {DIR% * \ /} DIR = $ {DIR% \/*} cat "$ DIR" /somefile.cf; fait a jeté une erreur mais lors de la lecture -r DIR; faire chat "$ DIR" /../ somefile.cf; fait travaillé. Merci. Une idée si xargs pourrait aussi fonctionner pour cela? – Sharjeel