diff --git a/lib/reference-db.sh b/lib/reference-db.sh index 8ad91c0..be6b2c6 100755 --- a/lib/reference-db.sh +++ b/lib/reference-db.sh @@ -417,7 +417,7 @@ build_wordpress_section() { # Check for common domain folder patterns if [[ "$path_after_home" == public_html ]]; then # This is the primary domain - get it from user info - domain=$(grep "^USER|${username}|" "$SYSREF_DB" | cut -d'|' -f3 || true) + domain=$(grep -F "USER|${username}|" "$SYSREF_DB" 2>/dev/null | cut -d'|' -f3 || true) elif [[ "$path_after_home" =~ ^public_html/(.+) ]]; then # Could be subdomain or subdirectory - extract folder name local folder=$(echo "$path_after_home" | cut -d'/' -f2) diff --git a/lib/user-manager.sh b/lib/user-manager.sh index 42553d6..d5ebdba 100755 --- a/lib/user-manager.sh +++ b/lib/user-manager.sh @@ -192,8 +192,8 @@ get_interworx_user_info() { local email="" if [ -x "/usr/local/interworx/bin/nodeworx.pex" ] && [ -n "$primary_domain" ]; then email=$(nodeworx -u -n -c Siteworx -a listAccounts 2>/dev/null | \ - grep -A20 "\"domain\" => \"$primary_domain\"" | \ - grep "\"email\"" | head -1 | sed 's/.*=> "\(.*\)".*/\1/') + grep -F "\"domain\" => \"$primary_domain\"" 2>/dev/null | head -1 | \ + grep "\"email\"" 2>/dev/null | head -1 | sed 's/.*=> "\(.*\)".*/\1/') fi echo "USER_EXISTS=yes" @@ -281,7 +281,7 @@ get_interworx_user_domains() { if [ -d "/etc/httpd/conf.d" ]; then grep -l "SuexecUserGroup ${username}" /etc/httpd/conf.d/vhost_*.conf 2>/dev/null | \ sed 's|.*/vhost_||; s|\.conf$||' | \ - grep -v "^${username}\." | \ + grep -vF "${username}." 2>/dev/null | \ sort -u fi } @@ -580,14 +580,14 @@ select_user_interactive() { get_user_processes() { local username="$1" - ps aux | grep "^${username}" | grep -v grep + ps aux | grep -F "$username" 2>/dev/null | grep -v grep } get_user_top_processes() { local username="$1" local limit="${2:-10}" - ps aux | grep "^${username}" | grep -v grep | sort -k3 -rn | head -n "$limit" + ps aux | grep -F "$username" 2>/dev/null | grep -v grep | sort -k3 -rn | head -n "$limit" } #############################################################################