私はbashを使ってスクリプトを書いています。
ログファイルの名前がありますが、log
その名前の前にディレクトリパスを追加したいと思います$destin
。しかし、の有無にかかわらず$destin
終了することができます。/
/
log="$destin/$log"
答え1
これを行うには、いくつかの変数拡張があります。
log="${destin%/}/$log"
%
変数の後にあるサフィックスを削除します(存在する場合)。
しかし必須ではありません。 「path//file」と「path/file」は同じファイルです。
クワジモドは次のように指摘しました。
いくつかのスラッシュを削除する必要がある場合は、log="$(dirname "$destin")/$(basename "$destin")"
そうする必要があります。同様のものであればdestin
これも機能しますa/b/c///
。