Chromeで複数の拡張機能を削除する

Chromeで複数の拡張機能を削除する

数百台のデバイスから複数の Chrome 拡張機能を削除する必要があります。特定の拡張機能が存在するかどうかを確認し、存在する場合は Default フォルダーを削除するスクリプトがあります。これらの拡張機能のいずれかが存在する場合に Default フォルダーを削除するように、スクリプトに複数の拡張機能を追加するにはどうすればよいでしょうか。スクリプトは現在次のようになっています。

#!/bin/bash

currentUser=`ls -l /dev/console | awk '{print $3}'`

if [ -d "/Users/$currentUser/Library/Application Support/Google/Chrome/Default/Extensions/omghfjlpggmjjaagoclmmobgdodcjboh" ]; then
rm -rf "/Users/$currentUser/Library/Application Support/Google/Chrome/Default" && killall "Google Chrome"  && echo "<result>Delete Browsec</result>"
else
echo "<result>No</result>"
fi

答え1

コメントで質問したように、スクリプトにはさまざまな小さな問題や理解できない点があります。その間、スクリプトの他の部分に触れることなく、拡張子名のリストを配列として提供することができます。

#!/bin/bash

currentUser=`ls -l /dev/console | awk '{print $3}'`
exts=("omghfjlpggmjjaagoclmmobgdodcjboh" "foofoobarbar" "barbarfofo")

for extension in "${exts[@]}";
do
    if [ -d "/Users/$currentUser/Library/Application Support/Google/Chrome/Default/Extensions/$extension" ]; then
        rm -rf "/Users/$currentUser/Library/Application Support/Google/Chrome/Default" && killall "Google Chrome"  && echo "<result>Delete Browsec</result>"
    else
        echo "<result>No</result>"
    fi
done

対象OSが何なのかは分かりませんが、現時点では移植性がないことを指摘しておきます。全てたとえば Linux では失敗します。

関連情報