とりわけ、プロファイル内のキャッシュ項目またはフォルダーを除外して、Firefox プロファイルをコピーする単純なバックアップ スクリプトを作成しようとしています。
これは私の debian ベースの crunchbang システムにあります。
簡単そうに聞こえるかもしれませんが、私は bash スクリプトの初心者であり、これまでに思いついたものは非常に洗練されておらず扱いにくいものなので、意見を求めたいと思っています。
これが私がこれまでに持っているものです:
#!/bin/bash
for f in /home/my_name/.mozilla/firefox/*.default/*
do
echo "$f level 1"
if [[ "$f" != "Cache" ]]
then
if [ -d $f ]
then
for g in $f/?
do
echo "$g level 2"
for h in $g/?
do
echo "$h level 3"
for i in $h/?
do
echo "$i level 4"
for j in $i/?
do
echo "$j level 5"
done
done
done
done
fi
fi
done
ご想像のとおり、エコーはエラー チェックのために存在します。これらは cp ステートメントに置き換えられます。
私が見る 1 つの問題は、これが十分に柔軟でないことです: ディレクトリが 5 つ以上下にある場合、それらは含まれません。それらを含めるようにスクリプトを拡張すると、問題を 1 ステップ移動するだけです。
別の問題は、現在スクリプトの出力に見られるものです。
/home/my_name/.mozilla/firefox/gibberish.default/OfflineCache/?/?/? level 4
この行が表示される理由はわかりませんが、そうすべきではないと思います。
それで... 途中で私を助けるためのヒントはありますか?