34 lines
1.2 KiB
Bash
Executable File
34 lines
1.2 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
HOST="${HOST:-192.168.88.108}"
|
|
USER_NAME="${USER_NAME:-Admin}"
|
|
PASS="${PASS:-P@ssw0rd!}"
|
|
MODE="${MODE:-Apply}" # Apply | Revert
|
|
|
|
HERE="$(cd "$(dirname "$0")" && pwd)"
|
|
SCRIPT="$HERE/../powershell/remove-windows-ai.ps1"
|
|
LOG_DIR="$HERE/../../logs"
|
|
STAMP="$(date +%Y%m%d-%H%M%S)"
|
|
LOG="$LOG_DIR/remove-windows-ai-${HOST}-${MODE}-${STAMP}.log"
|
|
|
|
mkdir -p "$LOG_DIR"
|
|
|
|
SSH_OPTS=(-o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o ConnectTimeout=10 -o ServerAliveInterval=30)
|
|
|
|
echo "[*] Uploading remove-windows-ai.ps1 to $USER_NAME@$HOST"
|
|
sshpass -p "$PASS" scp "${SSH_OPTS[@]}" "$SCRIPT" \
|
|
"$USER_NAME@$HOST:C:/Users/$USER_NAME/remove-windows-ai.ps1" >/dev/null
|
|
|
|
echo "[*] Mode=$MODE. Running on $HOST — this can take several minutes"
|
|
echo "[*] Log -> $LOG"
|
|
# Force Windows PowerShell 5.1 (powershell.exe), not pwsh 7.
|
|
sshpass -p "$PASS" ssh "${SSH_OPTS[@]}" "$USER_NAME@$HOST" \
|
|
"powershell.exe -NoProfile -ExecutionPolicy Bypass -File C:/Users/$USER_NAME/remove-windows-ai.ps1 -Mode $MODE" \
|
|
2>&1 | tee "$LOG"
|
|
|
|
echo "[*] Done. Saved: $LOG"
|
|
echo ""
|
|
echo "NOTE: A reboot is recommended. Reboot with:"
|
|
echo " sshpass -p '$PASS' ssh $USER_NAME@$HOST 'shutdown /r /t 5'"
|