From b31b9438d2fc81aa5931fafe1f270db8b25c0254 Mon Sep 17 00:00:00 2001 From: root Date: Wed, 24 Jan 2024 08:34:33 -0500 Subject: wordpress-config-info: with no argument, provide config-info for all wordpress sites --- wordpress/wordpress-config-info | 37 ++++++++++++++++++++++++++++++------- 1 file changed, 30 insertions(+), 7 deletions(-) (limited to 'wordpress') diff --git a/wordpress/wordpress-config-info b/wordpress/wordpress-config-info index e51175d..cedad12 100755 --- a/wordpress/wordpress-config-info +++ b/wordpress/wordpress-config-info @@ -1,14 +1,19 @@ #!/bin/bash set -e +set -o pipefail wp_config_get() { - sed -e 's/\r//g' -ne "s/^define *( *'$1' *, *'\([^']*\)' *) *; *$/\1/p" < "$wp_config" + sed -e 's/\r//g' -ne \ + "s/^define *( *'$1' *, *'\([^']*\)' *) *; *$/\1/p" \ + < "$wp_config" } -wp_table_prefix_get() +wp_config_table_prefix_get() { - sed -e 's/\r//g' -ne "s/^\$table_prefix *= *'\\([^']*\\)' *; *$/\\1/p" < "$wp_config" + sed -e 's/\r//g' -ne \ + "s/^\$table_prefix *= *'\\([^']*\\)' *; *$/\\1/p" \ + < "$wp_config" } find_wp_config() @@ -35,7 +40,24 @@ find_wp_config() false } -[ $# = 1 ] +if [ $# = 0 ] +then + prefix=/srv/ + suffix=/public_html + json='[ { site: $SITE, wordpress_config: . } ]' + for SITE in $prefix*$suffix + do + SITE=${SITE%$suffix} + SITE=${SITE#$prefix} + "$0" "$SITE" | + jq --arg SITE "$SITE" "$json" + done | + jq -s add + exit +elif [ $# != 1 ] +then + exit -1 +fi find_wp_config "$1" @@ -47,17 +69,18 @@ db_user=$(wp_config_get DB_USER) [ "$db_user" ] db_password=$(wp_config_get DB_PASSWORD) [ "$db_password" ] -table_prefix=$(wp_table_prefix_get) +table_prefix=$(wp_config_table_prefix_get) jq -n \ --arg h "$db_host" \ --arg u "$db_user" \ --arg p "$db_password" \ --arg n "$db_name" \ - --arg prefix "$table_prefix" \ + --arg t "$table_prefix" \ '{ db_host: $h , db_user: $u , db_password: $p , db_name: $n - , table_prefix: $prefix + , table_prefix: $t }' + -- cgit v1.2.3