Text-Processing
如何使用腳本向 Firefox 的profiles.ini 添加新的配置文件條目?
Firefox 使用一個名為的文本文件
~/.mozilla/firefox/profiles.ini
來保存配置文件列表。這些條目看起來與此類似:[Profile0] Name=default IsRelative=1 Path=default Default=1 ... [Profile8] Name=guest IsRelative=1 Path=guest
我需要添加一個新條目來
profiles.ini
使用 bash 腳本。問題是配置文件需要按順序編號,我事先不知道每個使用者有多少個配置文件。在上面的例子中,我需要添加$$ Profile9 $$. 如果相反,我添加$$ Profile8 $$或者$$ Profile10 $$或任何其他數字,它將無法正常工作。 我的腳本如何確定目前使用的最高配置文件編號,然後增加該編號並將新配置文件附加到
profiles.ini
?我已經在 a 中使用了這樣的東西
for-loop
,但我不知道如何獲得$NewNumber
。echo "[Profile$NewNumber] Name=NewProfile IsRelative=1 Path=NewPath" >> /home/$myuser/.mozilla/firefox/profiles.ini
也許使用 awk 來提取“
$$ Profile $$" 行然後處理掉 “$$ Profile … $$” 位,然後對結果進行數字排序,只保留最後一個(最高的):
highest=$(awk '/^\[Profile[0-9]+\]$/ { s=substr($0, 9); sub("]","", s); print s}' < /home/$myuser/.mozilla/firefox/profiles.ini |sort -n | tail -1) highest=$((highest + 1)) printf "[Profile%d] Name=NewProfile IsRelative=1 Path=NewPath" "$highest" >> /home/$myuser/.mozilla/firefox/profiles.ini
簡單的方法:
/usr/bin/firefox -CreateProfile profileName
它將維護文件中的配置
profiles.ini
文件並創建一個新配置文件(profileName
在這種情況下)。