Back

Useful scripts

Discover a collection of time-saving scripts to automate repetitive tasks and streamline your workflow in daily computing.

The page provides useful scripts for modifying host names on macOS and removing USB blocking on Windows, emphasizing the importance of checking their outputs before implementation, as support is not available for these scripts.

All the scripts below are provided on an as-is basis. Please check their output and effects before rolling them out. We are not available to support our customers on these scripts.

 

 

macOS

Modifying all host names

#!/bin/bash# This script changes the hostname on macOS by updating:# - ComputerName: The user-friendly name seen in Sharing preferences.# - LocalHostName: The Bonjour name used on the local network (must be sanitized).# - HostName: The system’s POSIX name.# - NetBIOSName: Used for SMB file sharing.## Usage: sudo ./change_hostname.sh NewHostname# Check if the new hostname is providedif [ "$#" -ne 1 ]; then    echo "Usage: sudo $0 <new_hostname>"    exit 1fiNEW_HOSTNAME="$1"# Sanitize the new hostname for LocalHostName (Bonjour) requirements:# - Convert to lowercase, remove invalid characters (keeping only letters, numbers, and hyphens).SANITIZED_HOSTNAME=$(echo "$NEW_HOSTNAME" | tr '[:upper:]' '[:lower:]' | tr -cd '[:alnum:]-')echo "Changing hostname to: $NEW_HOSTNAME"echo "Using sanitized LocalHostName: $SANITIZED_HOSTNAME"# Change the ComputerName (visible in Sharing settings)sudo scutil --set ComputerName "$NEW_HOSTNAME"# Change the LocalHostName (used for Bonjour)sudo scutil --set LocalHostName "$SANITIZED_HOSTNAME"# Change the HostName (the underlying POSIX hostname)sudo scutil --set HostName "$NEW_HOSTNAME"# Optionally, change the NetBIOS name for SMB file sharingsudo defaults write /Library/Preferences/SystemConfiguration/com.apple.smb.server NetBIOSName -string "$NEW_HOSTNAME"echo "Hostname successfully updated!"echo "A reboot might be required for all changes to fully take effect."

 

Windows

Remove USB Blocking

# Run as AdminWrite-Host "Removing RemovableStorage Blocking..." -ForegroundColor Cyan# CSP Paths$paths = @(  "HKLM:\SOFTWARE\Microsoft\PolicyManager\current\device\ADMX_RemovableStorage",  "HKLM:\SOFTWARE\Microsoft\PolicyManager\current\user\ADMX_RemovableStorage")foreach ($path in $paths) {    if (Test-Path $path) {        Remove-Item -Path $path -Recurse -Force        Write-Host "Key removed : $path" -ForegroundColor Green    } else {        Write-Host "Key not found : $path" -ForegroundColor Yellow    }}# Refresh policiesgpupdate /forceWrite-Host "✅ USB should now be usable" -ForegroundColor Green

 

Was this article helpful?

Give feedback about this article

Can’t find what you’re looking for?

Our customer care team is here for you.

Contact us

Knowledge Base Software powered by Helpjuice