本篇文章想分享我自己目前在Linux筆電上使用的瀏覽器多開的管理,方法簡單好用。
由於工作需求同時有多個email身份,又不希望每次都要重新登入,因此過去的作法就是很單純的用portable的瀏覽器,不同的身份用不同的瀏覽器登入,並在不同的portable瀏覽器之間切換身份即可。(唯一的缺點就是稍微佔空間。)
不過隨著我的身份變多,就有需要有軟體幫我管理這些瀏覽器以及對應的身份ID。這種需求正規的做法肯定是弄個程式連SQLite,然後給予不同瀏覽器自動登入切換身份等等,但實我在不想花太多時間在這上面開發,後來看到Zenity能快速建立選單,因此就用最簡單的方式,幾分鐘搞定:以Zenity建立選單,以及用文字檔存ID能暫時用就好。
由於需要portable的瀏覽器,因此需要先用腳本抓火狐回來,並且順便建立我們的資料庫id_sets.txt
setup.sh
#!/bin/bash
echo "ID example@mail.com" > id_sets.txt
wget https://gist.githubusercontent.com/whuang022nccu/6e0430e1345d5b25b20a13978d174aad/raw/ef97fe0b919507186a969908f4393a99e518766c/download-mozilla-portable.sh
sed -e 's/73.0/103.0.1/g' download-mozilla-portable.sh > download-mozilla-portable_103.0.1.sh
sh download-mozilla-portable_103.0.1.sh
mv firefox-portable-103.0.1 firefox-portable-103.0.1_ID_Here
zip -r firefox-portable-103.0.1.zip firefox-portable-103.0.1_ID_Here/
rm -r firefox-portable-103.0.1_ID_Here
rm download-mozilla-portable.sh
rm download-mozilla-portable_103.0.1.sh
主選單的部份會從id_sets.txt讀入ID列表,並且用zenity顯示:
run.sh:
#!/bin/bash
ID_LIST=$(cat id_sets.txt)
while true
do
sid=`zenity --list --text="Web ID Select" --width=400 --height=600 --multiple --separator="," --column=$ID_LIST `
if [ $? -eq 0 ]; then
path='./firefox-portable-103.0.1_'$sid'/firefox-portable &'
( exec $path & )
else
exit
fi
done
另外需要新增身份時就用zenity建立對話框,給使用者輸入ID並檢查目前目錄下的portable瀏覽器有沒有對應的ID,沒有重複就把ID丟到id_sets.txt,並且建立對應的portable瀏覽器目錄:
creat_new.sh
#!/bin/bash
user_input=$(zenity --entry --text="請輸入要創建的ID Email")
if [ $? = 0 ]; then
echo "pressed OK"
echo "$user_input"
else
echo "pressed cancel"
exit 1 ;
fi
new_ID=$user_input
flag=0
for i in $(ls -d */); do
IFS="_"
set $i
if [[ $new_ID/ == $2 ]]; then
flag=1;
fi
done
if [[ $flag == 1 ]]; then
echo "ID = "$new_ID" already exist , this ID system will not be creat ! "
exit 1 ;
fi
unzip firefox-portable-103.0.1.zip
mv firefox-portable-103.0.1_ID_Here firefox-portable-103.0.1_$new_ID
ID_LIST=$(cat id_sets.txt)
ID_LIST=$ID_LIST" "$new_ID
echo $ID_LIST > id_sets.txt
echo $new_ID" created successed ! "
接著在終端機機執行:
./setup.sh
會在當前目錄下建立firefox-portable-103.0.1.zip以及id_sets.txt
未來需要新增身份時在終端機執行:
./creat_new.sh
就會出現對話框

例如隨意輸入ddd@gmail.com,再執行
./run.sh
就會出現操作選單:

點選我們想要使用的身份就會開啟對應身份的瀏覽器了:

當然第一次使用瀏覽器需要登入一下各種帳密,只要沒有登出,之後就可以很方便的切換”整組”身份了。當然這個本身沒有什麼技術含量,但確實簡單粗暴好用。而且真的大幅感改善我每次管理整組身份帳號的麻煩程度。
本文允許重製、散布、傳輸以及修改,但不得為商業目的之使用
使用時必須註明出處自:楊明翰 , 台灣人工智慧與資料科學研究室 https://aistudio.tw