堅牢なパスの構築
シェルスクリプト(zshなど)にいくつかの変数があるとします。 FOLDER_1, FOLDER_2, etc. これらの変数は、から派生するフォルダーを参照します/。たとえば、パスがある場合/home/me/stuff/items 変数は次のとおりです。 FOLDER_1='home' FOLDER_2='me' FOLDER_3='stuff' ここで、変数を連結して対応するパスを構築し直したいとします。可能な方法の1つは、次のようにパスを作成することです。 PATH=$FOLDER_1/$FOLDER_2/$FOLDER_3/ ただし、変数の中にはFOLDER_iスラッシュが付いているものもあれば、付いていないものもあると言う(そして、どれがわからないのか) FOLDER_1='home' FOLDER_2='stuff/' FOLDER_3='items' 私の質問は次のとおりです。どうすればパスを堅牢に構築できますか?(たとえば、二重スラッシュを避け、必要な場所に追加します)。 これを行う1つの方法は/、変数のペア間に常に追加し、で重複を削除することsedだと思いましたが、それを動作させることはできません(私はで/正しく処理しているかわかりませんsed)。 また、私は車輪を再発明していますか?(つまり、すでにこれを行う組み込み機能はありますか?)。 最後に、変数が配列内にある場合、たとえばFOLDERS、ループせずにこれを行うことは可能ですか?(または、ループFOLDERS内にあるが、配列内にいくつあるかを知らずに)。