Created
February 13, 2020 02:59
-
-
Save ryu1/70cef98c533610f1bbdc45f6c521d793 to your computer and use it in GitHub Desktop.
Shell Script Changing Host Name.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# ------------------------------------------------------------------ | |
# [Author] Title | |
# Description | |
# ------------------------------------------------------------------ | |
SUBJECT=some-unique-id | |
VERSION=0.1.0 | |
USAGE="Usage: command -hv args" | |
# --- Option processing -------------------------------------------- | |
while getopts ":vh" optname | |
do | |
case "$optname" in | |
"v") | |
echo "Version $VERSION" | |
exit 0; | |
;; | |
"h") | |
echo $USAGE | |
exit 0; | |
;; | |
"?") | |
echo "Unknown option $OPTARG" | |
exit 0; | |
;; | |
":") | |
echo "No argument value for option $OPTARG" | |
exit 0; | |
;; | |
*) | |
echo "Unknown error while processing options" | |
exit 0; | |
;; | |
esac | |
done | |
shift $(($OPTIND - 1)) | |
param=$1 | |
command="command" | |
# ----------------------------------------------------------------- | |
LOCK_FILE=/tmp/${SUBJECT}.lock | |
if [ -f "$LOCK_FILE" ]; then | |
echo "Script is already running" | |
exit | |
fi | |
# ----------------------------------------------------------------- | |
trap "rm -f $LOCK_FILE" EXIT | |
touch $LOCK_FILE | |
# ----------------------------------------------------------------- | |
function command { | |
echo Current Local Host Name: `scutil --get LocalHostName` | |
echo Current Computer Name: `scutil --get ComputerName` | |
echo Current Host Name: `scutil --get HostName` | |
sudo scutil --set ComputerName $param | |
sudo scutil --set LocalHostName $param | |
echo Changed Local Host Name: `scutil --get LocalHostName` | |
echo Changed Computer Name: `scutil --get ComputerName` | |
echo Changed Host Name: `scutil --get HostName` | |
} | |
# ----------------------------------------------------------------- | |
# ----------------------------------------------------------------- | |
if [ -n "$(type -t ${command})" ] && [ "$(type -t ${command})" = function ]; then | |
${command} | |
else | |
echo "'${cmd}' is NOT a command"; | |
fi |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment