#!/bin/zsh set -euo pipefail # Auto-remount TN shares when network changes. # Credentials should be stored in macOS Keychain (connect once via Finder, remember password). SERVER="140.78.8.107" # Use URL-encoded path segments for spaces if needed. SHARE1_URL="smb://$SERVER/TNGROUP/tn-group/ipec" SHARE2_URL="smb://$SERVER/TNHOME/home/AK127132" # Expected mount points under /Volumes (adjust if your Finder mount names differ) MOUNT1="/Volumes/ipec" MOUNT2="/Volumes/AK127132" log() { echo "[tnmount] $*" } is_mounted() { local mountpoint="$1" mount | grep -q " on ${mountpoint} " } mount_if_missing() { local mountpoint="$1" local url="$2" if is_mounted "$mountpoint"; then log "Already mounted: $mountpoint" else log "Mounting: $url" open "$url" fi } # Skip when server is unreachable (offsite/no VPN), try again on next interval. if ! nc -zw2 "$SERVER" 445 >/dev/null 2>&1; then log "Server $SERVER:445 not reachable; skipping" exit 0 fi mount_if_missing "$MOUNT1" "$SHARE1_URL" mount_if_missing "$MOUNT2" "$SHARE2_URL" log "Done"