From 4ecfe2b15232419cd4024ed6de08f7ac7a89aa87 Mon Sep 17 00:00:00 2001 From: root Date: Mon, 19 May 2025 07:13:30 +0000 Subject: [PATCH] Added list shares and completed aliases --- aliases.sh | 4 ++++ list_smb_shares.sh | 29 +++++++++++++++++++++++++++++ 2 files changed, 33 insertions(+) create mode 100755 list_smb_shares.sh diff --git a/aliases.sh b/aliases.sh index 5e0fa1d..585ee1e 100644 --- a/aliases.sh +++ b/aliases.sh @@ -1,3 +1,7 @@ alias smbtools_user_add=$SMB_TOOLS_PATH/add_smb_user.sh alias smbtools_user_remove=$SMB_TOOLS_PATH/remove_smb_user.sh alias smbtools_user_list=$SMB_TOOLS_PATH/list_smb_users.sh + +alias smbtools_share_create=$SMB_TOOLS_PATH/create_share.sh +alias smbtools_share_remove=$SMB_TOOLS_PATH/remove_share.sh +alias smbtools_share_list=$SMB_TOOLS_PATH/list_smb_shares.sh diff --git a/list_smb_shares.sh b/list_smb_shares.sh new file mode 100755 index 0000000..7b16d2a --- /dev/null +++ b/list_smb_shares.sh @@ -0,0 +1,29 @@ +#!/bin/bash + +# Define colors +GREEN='\033[0;32m' +YELLOW='\033[1;33m' +NC='\033[0m' # No Color + +SHARE_DIR="/etc/samba/shares.d" + +# Header +printf "${GREEN}%s${NC}\n" "--------------------------------------------------------------------------------------------" +printf "${GREEN}%-20s %-40s %-20s${NC}\n" "SHARE NAME" "PATH" "USER" +printf "${GREEN}%s${NC}\n" "--------------------------------------------------------------------------------------------" + +# Loop through share config files +for file in "$SHARE_DIR"/*.conf; do + [ -e "$file" ] || continue # Skip if no .conf files + + SHARE_NAME=$(basename "$file" .conf) + PATH_LINE=$(grep -i "^ *path *= *" "$file") + USER_LINE=$(grep -i "^ *valid users *= *" "$file") + + # Extract values + SHARE_PATH=$(echo "$PATH_LINE" | cut -d'=' -f2- | xargs) + VALID_USER=$(echo "$USER_LINE" | cut -d'=' -f2- | xargs) + + # Print each row with fixed width columns + printf "%-20s %-40s %-20s\n" "$SHARE_NAME" "$SHARE_PATH" "$VALID_USER" +done \ No newline at end of file