Skip to content
Snippets Groups Projects

Add playbook to merge users

Merged Bram Veenboer requested to merge add-merge-users into main
3 files
+ 87
1
Compare changes
  • Side-by-side
  • Inline

Files

+ 26
0
#!/bin/bash
set -e
SOURCE_DIR=$1
DEST_DIR=$2
for file in passwd group shadow; do
SOURCE_FILE="${SOURCE_DIR}/${file}_src"
DEST_FILE="${DEST_DIR}/${file}"
MERGED_FILE="${SOURCE_DIR}/merged_${file}"
# Ensure files exist
if [[ ! -f "$SOURCE_FILE" || ! -f "$DEST_FILE" ]]; then
echo "Error: One of the source or destination files is missing!"
exit 1
fi
# Extract users
awk -F: '$3 < 1000' "$DEST_FILE" > "$MERGED_FILE" # System users from target
awk -F: '$3 >= 1000' "$SOURCE_FILE" >> "$MERGED_FILE" # Normal users from source
# Ensure uniqueness and sort
sort -t: -k1,1 -u -o "$MERGED_FILE" "$MERGED_FILE"
done
Loading