« [bash]起動ディスクの名前を取得する | トップページ | [bash]ユーザーに応答を求める »

[bash]zoomユーザーインストール(クリーニング付き)

設定は残すように変更した

ダウンロード - zoomuserinstall.zip




【スクリプトエディタで開く】

#!/bin/bash
#com.cocolog-nifty.quicktimer.icefloe
########################

###管理者インストールしているか?チェック

USER_WHOAMI=$(/usr/bin/whoami)
echo "実行したユーザーは:$USER_WHOAMI"
if [ "$USER_WHOAMI" != "root" ]; then
  echo "このスクリプトを実行するには管理者権限が必要です。"
  echo "sudo で実行してください"
  exit 1
fi

#テンポラリーディレクトリ
STR_DATE=$(date '+%s')
/bin/mkdir -p /tmp/"$STR_DATE"
#起動ディスクの名前を取得する
/usr/bin/touch /tmp/"$STR_DATE"/diskutil.plist
/usr/sbin/diskutil info -plist / >/tmp/"$STR_DATE"/diskutil.plist
STARTUPDISK_NAME=$(/usr/bin/defaults read /private/tmp/"$STR_DATE"/diskutil.plist VolumeName)
echo "$STARTUPDISK_NAME"

/usr/bin/sudo -u "$SUDO_USER" /bin/mkdir -p "$HOME"/Applications
/usr/bin/sudo -u "$SUDO_USER" /bin/chmod 700 "$HOME"/Applications
/usr/bin/sudo -u "$SUDO_USER" /usr/sbin/chown "$SUDO_USER" "$HOME"/Applications
/usr/bin/touch "$HOME"/Applications/.localized

/usr/bin/sudo -u "$SUDO_USER" /bin/mkdir -p "$HOME"/Applications/Utilities
/usr/bin/sudo -u "$SUDO_USER" /bin/chmod 755 "$HOME"/Applications/Utilities
/usr/bin/sudo -u "$SUDO_USER" /usr/sbin/chown "$SUDO_USER" "$HOME"/Applications/Utilities
/usr/bin/touch "$HOME"/Applications/Utilities/.localized

/usr/bin/chflags nohidden "$HOME"/Library
/usr/bin/SetFile -a v "$HOME"/Library

/usr/bin/killall "zoom.us" 2>/dev/null
/usr/bin/killall "zoom.us Networking" 2>/dev/null
/usr/bin/killall "caphost" 2>/dev/null

#####古いファイルをゴミ箱に SUDO
function DO_MOVE_TO_TRASH_SUDO() {
  if [ -e "$1" ]; then
    TRASH_DIR=$(/usr/bin/mktemp -d "$HOME/.Trash/XXXXXXXX")
    /usr/bin/sudo /bin/mv "$1" "$TRASH_DIR"
    /usr/bin/sudo /bin/chmod 777 "$TRASH_DIR"
  fi
}

DO_MOVE_TO_TRASH_SUDO "/Applications/zoom.us.app"
DO_MOVE_TO_TRASH_SUDO "/Applications/ZoomOutlookPlugin"
DO_MOVE_TO_TRASH_SUDO "/Users/Shared/ZoomOutlookPlugin"
DO_MOVE_TO_TRASH_SUDO "/Library/Application Support/ZoomOutlookPlugin"
DO_MOVE_TO_TRASH_SUDO "/Library/PrivilegedHelperTools/us.zoom.ZoomDaemon"
DO_MOVE_TO_TRASH_SUDO "/Library/ScriptingAdditions/zOLPluginInjection.osax"
DO_MOVE_TO_TRASH_SUDO "/Library/Logs/zoomusinstall.log"
DO_MOVE_TO_TRASH_SUDO "/Library/Logs/zoomoutlookplugin.log"

#####古いファイルをゴミ箱に LaunchCtl
function DO_MOVE_TO_TRASH_LAUNCHCTL() {
  if [ -e "$1" ]; then
    /usr/bin/sudo /bin/launchctl stop -w "$1"
    /usr/bin/sudo /bin/launchctl unload -w "$1"
    TRASH_DIR=$(/usr/bin/mktemp -d "$HOME/.Trash/XXXXXXXX")
    /usr/bin/sudo /bin/mv "$1" "$TRASH_DIR"
    /usr/bin/sudo /bin/chmod 777 "$TRASH_DIR"
  fi
}

DO_MOVE_TO_TRASH_LAUNCHCTL "/Library/LaunchDaemons/us.zoom.ZoomDaemon.plist"
DO_MOVE_TO_TRASH_LAUNCHCTL "/Library/LaunchAgents/us.zoom.pluginagent.plist"

#####古いファイルをゴミ箱に  USER
function DO_MOVE_TO_TRASH() {
  if [ -e "$1" ]; then
    TRASH_DIR=$(/usr/bin/mktemp -d "$HOME/.Trash/XXXXXXXX")
    /bin/mv "$1" "$TRASH_DIR"
    /bin/chmod 777 "$TRASH_DIR"
  fi
}
#####古いファイルをゴミ箱に
DO_MOVE_TO_TRASH "$HOME/Applications/zoom.us.app"
DO_MOVE_TO_TRASH "$HOME/Applications/ZoomOutlookPlugin"
DO_MOVE_TO_TRASH "$HOME/Applications/Utilities/ZoomOutlookPlugin"
DO_MOVE_TO_TRASH "$HOME/Library/Caches/us.zoom.xos"
DO_MOVE_TO_TRASH "$HOME/Library/WebKit/us.zoom.xos"
DO_MOVE_TO_TRASH "$HOME/Library/HTTPStorages/us.zoom.xos"
DO_MOVE_TO_TRASH "$HOME/Library/HTTPStorages/us.zoom.xos.binarycookies"
DO_MOVE_TO_TRASH "$HOME/Library/Logs/zoomusinstall.log"
DO_MOVE_TO_TRASH "$HOME/Library/Logs/ZoomPhone"
DO_MOVE_TO_TRASH "$HOME/Library/Logs/zoom.us"
DO_MOVE_TO_TRASH "$HOME/Library/Receipts/us.zoom.pkg.videomeeting.bom"
DO_MOVE_TO_TRASH "$HOME/Library/Receipts/us.zoom.pkg.videomeeting.plist"
DO_MOVE_TO_TRASH "$HOME/Library/Receipts/ZoomMacOutlookPlugin.pkg.bom"
DO_MOVE_TO_TRASH "$HOME/Library/Receipts/ZoomMacOutlookPlugin.pkg.plist"

#####古いファイルをゴミ箱に LaunchCtl
function DO_MOVE_TO_TRASH_LAUNCHAGENT() {
  if [ -e "$1" ]; then
    /bin/launchctl stop -w "$1"
    /bin/launchctl unload -w "$1"
    TRASH_DIR=$(/usr/bin/mktemp -d "$HOME/.Trash/XXXXXXXX")
    /bin/mv "$1" "$TRASH_DIR"
  fi
}

DO_MOVE_TO_TRASH_LAUNCHAGENT "$HOME/Library/LaunchAgents/us.zoom.pluginagent.plist"

###############/var/folde TemporaryDirectory
MKTEMP_DIR=$(mktemp -d)
TEMP_DIR_T="$(dirname "$MKTEMP_DIR")"
#####古いファイルをゴミ箱に
GOTOTRASH_PATH="$TEMP_DIR_T/us.zoom.xos"
if [ -e "$GOTOTRASH_PATH" ]; then
  TRASH_DIR=$(/usr/bin/mktemp -d "$HOME/.Trash/XXXXXXXX")
  /bin/mv "$GOTOTRASH_PATH" "$TRASH_DIR"
fi

TEMP_DIR="$(dirname "$TEMP_DIR_T")"
TEMP_DIR_C="${TEMP_DIR}/C"

#####古いファイルをゴミ箱に
GOTOTRASH_PATH="$TEMP_DIR_C/us.zoom.xos"
if [ -e "$GOTOTRASH_PATH" ]; then
  TRASH_DIR=$(/usr/bin/mktemp -d "$HOME/.Trash/XXXXXXXX")
  /bin/mv "$GOTOTRASH_PATH" "$TRASH_DIR"
fi
GOTOTRASH_PATH="$TEMP_DIR_C/com.tonelib.zoom"
if [ -e "$GOTOTRASH_PATH" ]; then
  TRASH_DIR=$(/usr/bin/mktemp -d "$HOME/.Trash/XXXXXXXX")
  /bin/mv "$GOTOTRASH_PATH" "$TRASH_DIR"
fi

#####本処理 ダウンロード

ARCHITEC=$(/usr/bin/arch)
/bin/echo "Running on $ARCHITEC"
if [ "$ARCHITEC" == "arm64" ]; then
  /usr/bin/curl -L -o /tmp/"$STR_DATE"/Zoom.pkg 'https://zoom.us/client/latest/Zoom.pkg?archType=arm64' --connect-timeout 20
  /usr/bin/curl -L -o /tmp/"$STR_DATE"/ZoomMacOutlookPlugin.pkg 'https://zoom.us/client/latest/ZoomMacOutlookPlugin.pkg?archType=arm64' --connect-timeout 20
else
  /usr/bin/curl -L -o /tmp/"$STR_DATE"/Zoom.pkg 'https://zoom.us/client/latest/Zoom.pkg' --connect-timeout 20
  /usr/bin/curl -L -o /tmp/"$STR_DATE"/ZoomMacOutlookPlugin.pkg 'https://zoom.us/client/latest/ZoomMacOutlookPlugin.pkg' --connect-timeout 20
fi
###本処理 インストール
###実行しているユーザー名
SUDO_USER=$(echo "$HOME" | awk -F'/' '{print $NF}')
echo "$SUDO_USER"

/usr/bin/sudo -u "$SUDO_USER" /usr/sbin/installer -pkg /tmp/"$STR_DATE"/Zoom.pkg -target CurrentUserHomeDirectory -dumplog -allowUntrusted -lang ja

/usr/bin/sudo -u "$SUDO_USER" /usr/sbin/installer -pkg /tmp/"$STR_DATE"/ZoomMacOutlookPlugin.pkg -target CurrentUserHomeDirectory -dumplog -allowUntrusted -lang ja

PLIST_DICT="<dict><key>tile-data</key><dict><key>file-data</key><dict><key>_CFURLString</key><string>$HOME/Applications/zoom.us.app</string><key>_CFURLStringType</key><integer>0</integer></dict></dict></dict>"
/usr/bin/sudo -u "$SUDO_USER" /usr/bin/defaults write com.apple.dock persistent-apps -array-add "$PLIST_DICT"

/usr/bin/killall Dock

exit 0

|

« [bash]起動ディスクの名前を取得する | トップページ | [bash]ユーザーに応答を求める »

zoom」カテゴリの記事

Bash」カテゴリの記事